fphttpclient keine PATCH-methode?

Alle Fragen zur Netzwerkkommunikation

fphttpclient keine PATCH-methode?

Beitragvon Thandor » 13. Feb 2020, 13:52 fphttpclient keine PATCH-methode?

Hallo,

ich hoffe ich bin in dieser Kategorie richtig...

Ich bin gerader dabei eine API-Anbindung an einem Webshop (Shopware) zu schreiben.
Dazu nehme ich den fphttpclient, nun möchte ich aber inhalte updaten. Die API möchte, dass ich die 'PATCH'-Methode verwende aber die scheint es beim fphttpclient nich zu geben?

Habe ich was übersehen? Gibt es alternativen?

liebe Grüße
Thandor
Thandor
 
Beiträge: 122
Registriert: 30. Jan 2010, 18:17
Wohnort: Berlin
OS, Lazarus, FPC: Windows 10 64Bit/ lazarus 1.6 mit FPC 3.0.0 (32Bit) | 
CPU-Target: 64Bit
Nach oben

Beitragvon Warf » 13. Feb 2020, 14:04 Re: fphttpclient keine PATCH-methode?

Thandor hat geschrieben:Hallo,

ich hoffe ich bin in dieser Kategorie richtig...

Ich bin gerader dabei eine API-Anbindung an einem Webshop (Shopware) zu schreiben.
Dazu nehme ich den fphttpclient, nun möchte ich aber inhalte updaten. Die API möchte, dass ich die 'PATCH'-Methode verwende aber die scheint es beim fphttpclient nich zu geben?

Habe ich was übersehen? Gibt es alternativen?

liebe Grüße
Thandor


Du kannst über die methode HTTPMethod beliebeige Methoden verwenden:
Code: Alles auswählen
var
  httpClient: TFPHTTPClient;
  outputStream: TStringStream;
  ResponseString: String;
begin
  httpClient := TFPHTTPClient.Create(nil);
  outputStream := TStringStream.Create('');
  try
    httpClient.HTTPMethod('PATCH', 'http://URL.de', outputStream, [201]);
    ResponseString = outputStream.DataString;
  finally
    httpClient.Free;
    outputStream.Free;
  end;
end;


Für mehr informationen lohnt es sich einfach mal in den source vom fphttpclienten reinzuschauen, Z.B. via strg+click auf die .Post methode, da siehst du wie der content gesetzt wird und wie HTTPMethod aufgerufen werden muss.

Am einfachsten wäre es wohl einen Class Helper zu schreiben der den fphttpclienten um die methoden die du benötigst erweitert
Warf
 
Beiträge: 1339
Registriert: 23. Sep 2014, 16:46
Wohnort: Aachen
OS, Lazarus, FPC: MacOS | Win 10 | Linux | 
CPU-Target: x86_64
Nach oben

Beitragvon Thandor » 13. Feb 2020, 15:36 Re: fphttpclient keine PATCH-methode?

Hallo Warf,

danke für deine Hilfe. Die Funktion HTTPMethod habe ich einfach übersehen bzw. nicht erkannt. So ist das manschmal mit dem Wald und den Bäumen.
hast mir sehr weiter geholfen. Danke.

liebe Grüße
Thandor
Thandor
 
Beiträge: 122
Registriert: 30. Jan 2010, 18:17
Wohnort: Berlin
OS, Lazarus, FPC: Windows 10 64Bit/ lazarus 1.6 mit FPC 3.0.0 (32Bit) | 
CPU-Target: 64Bit
Nach oben

• Themenende •

Zurück zu Netzwerk



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste

porpoises-institution
accuracy-worried