我可以在Delphi 7中发送PUT和DELETE请求吗?

3

我需要向REST API发送PUT和DELETE请求,应该怎么做?同时也要包括POST和GET请求。

3个回答

9

4
或者看看开放源代码Synapse库。在HTTPSend单元中有一些简单的函数调用,完全可以无痛实现此功能。只需将示例函数/过程用作PUT / DELETE的模型即可。现有例程已经提供了POST和GET。区别在于传递的方法。
个人认为,这个库非常适合与REST一起使用。它简单、代码质量好,并且易于扩展。
例如,下面是一个发送和接收流的简单put操作:
function HttpPutBinary(const URL: string; const Data: TStream): Boolean;
var
  HTTP: THTTPSend;
begin
  HTTP := THTTPSend.Create;
  try
    HTTP.Document.CopyFrom(Data, 0);
    HTTP.MimeType := 'Application/octet-stream';
    Result := HTTP.HTTPMethod('PUT', URL);  // changed method from 'POST'
    Data.Size := 0;
    if Result then
    begin
      Data.Seek(0, soFromBeginning);
      Data.CopyFrom(HTTP.Document, 0);
    end;
  finally
    HTTP.Free;
  end;
end;

1

请查看 ICS 组件,它们非常适合这个工作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接