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

问题描述:

我需要发送PUT和DELETE以及POST,GET到REST API我该怎么做?我可以在Delphi 7的PUT和DELETE中发送请求吗?

德尔福7自带Indy。请参阅TIdHTTP component,具体说明Get和Put方法。

查看ICS组件,它们适合这项工作。

或者看看开源的Synapse库。在HTTPSend单元中有一些简单的函数调用,这使得这完全无痛。只需使用示例函数/过程作为PUT/DELETE的模型即可。现有的例程已经提供了POST和GET。区别在于通过的方法。

就我个人而言,我发现这个库与REST一起工作是完全匹配的。它简单,写得很好,很容易扩展。

例如,下面是一个简单的放发送和接收流:

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;