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

时间:2008-12-11 11:32:56

标签: delphi rest

我需要发送PUT和DELETE以及POST,GET到REST API我该怎么办?

3 个答案:

答案 0 :(得分:9)

Delphi 7附带Indy。请参阅TIdHTTP component,特别是Get和Put方法。

答案 1 :(得分: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;

答案 2 :(得分:1)

查看ICS组件,它们适用于该作业。