是的,你可以使用Delphi的任何TCP库,包括一个HTTP服务器,例如Internet Direct (Indy)。通过Indy,您可以创建独立的应用程序(或更好的,Windows服务),而无需IIS。
在RESTful Web应用程序中,senduserdata
命令将通过URL来实现像
http://example.com/api/users
客户端,然后使用一个HTTP PUT或PATCH请求更新users
资源。
甲senduserdate呼叫用户ID 774422将写成像
LStream := TStringStream.Create('{ "amount":100.50, "currency":"EUR" }');
try
HTTP := TIdHTTP.Create;
try
HTTP.Put('http://example.com/api/users/774422', LStream);
finally
HTTP.Free;
end;
finally
LStream.Free;
end;
在Delphi的应用服务器侧,TIdHTTPServer
组分然后监听用于/休息/用户的资源,并在OnCommandOther HTTP请求事件处理程序,它会提取请求主体字符串,解析它,然后使用资源路径(/ 774422)中给出的ID将更改应用到用户。
来源
2014-02-21 09:24:33
mjn
我不确定你是在寻找外部库还是用捆绑的东西来做到这一点。 RemObjects有一个很好的付费解决方案,既可以作为ISAPI DLL,也可以作为独立的应用程序使用。很久以前,我和Indy做过一些工作,但我认为你需要在那里做点什么。它看起来像Datasnap也有一个解决方案http://edn.embarcadero.com/article/41305。也许还可以看一下Delphi Web Script(DWS)。他们可能有一些东西。 – Graymatter
听起来像你可以用http://xxm.sf.net/做的事情,特别是REST(因为xxm中的SOAP支持仍然需要一些工作)。 –
另一种选择,非常接近例如到WCF RestFul Json http://blog.synopse.info/post/2012/03/07/Interface-based-services –