是的,你可以使用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 –