TsgcHTTP2ClientMethoden › Patch

Patch Methode

Voert een synchrone HTTP/2 PATCH uit en past een gedeeltelijke wijziging toe op de doelresource.

Overloads

Overload 1

Syntaxis

function Patch(const aURL: string; const aSource: TStream): string;

Parameters

NaamTypeBeschrijving
aURLconst stringAbsolute URL van de resource die gedeeltelijk moet worden bijgewerkt.
aSourceconst TStreamStream die het patchdocument bevat (bijvoorbeeld een JSON Patch- of JSON Merge Patch-body).

Retourwaarde

Antwoordtekst geretourneerd door de server, gedecodeerd als een tekenreeks. (string)

Opmerkingen

In tegenstelling tot PUT verzendt PATCH alleen de velden die moeten worden gewijzigd. Zorg ervoor dat Request.ContentType overeenkomt met de patch-indeling die de server verwacht (bijv. application/json-patch+json of application/merge-patch+json).

Voorbeeld

oBody := TStringStream.Create('{"email":"new@example.com"}');
try
  oClient.Request.ContentType := 'application/merge-patch+json';
  vResponse := oClient.Patch('https://api.example.com/users/42', oBody);
finally
  oBody.Free;
end;

Overload 2

Syntaxis

procedure Patch(const aURL: string; const aSource: TStream; const aResponseContent: TStream);

Parameters

NaamTypeBeschrijving
aURLconst stringAbsolute URL van de resource die gedeeltelijk moet worden bijgewerkt.
aSourceconst TStreamStream met de patchpayload.
aResponseContentconst TStreamStream die de onbewerkte respons van de server vastlegt.

Opmerkingen

Volledig gestreamde variant. Geschikt wanneer het patch-document of de response-weergave groot genoeg is dat een string-round-trip verspilling zou zijn.

Voorbeeld

oIn := TFileStream.Create('patch.json', fmOpenRead);
oOut := TMemoryStream.Create;
try
  oClient.Patch('https://api.example.com/users/42', oIn, oOut);
finally
  oOut.Free;
  oIn.Free;
end;

Terug naar methoden