我們有一個使用RemObjects DataAbstract編寫的三層Delphi應用程序。我們的許多客戶都在要求提供API,以便他們可以使用自己的應用程序與其進行交互。你的Delphi應用程序提供哪些類型的API?
API必須允許客戶端使用各種參數調用方法,並返回範圍從簡單參數到整個數據集的結果。
您可以推薦哪些類型的API,以及它們有多難實施?
我們有一個使用RemObjects DataAbstract編寫的三層Delphi應用程序。我們的許多客戶都在要求提供API,以便他們可以使用自己的應用程序與其進行交互。你的Delphi應用程序提供哪些類型的API?
API必須允許客戶端使用各種參數調用方法,並返回範圍從簡單參數到整個數據集的結果。
您可以推薦哪些類型的API,以及它們有多難實施?
由於您已經使用RemObjects DataAbstract編寫了您的應用程序,因此您已經在應用程序中準備好了您需要的所有東西。
RemObjects DataAbstract包含RemObjects SDK,它是建立可用API的最靈活和最簡單的方法之一。 RemObjects SDK允許您以多種方式將方法方法從本地二進制RemObjects調用,XML-RPC,JSON,SOAP,本地DLL,Windows消息,到命名管道......展示給您的客戶SMTP/POP。
美的是你可以設計一個API,然後很容易地將它暴露給你的客戶via any or all of these different mechanisms。只需設計您的API方法,然後詢問您的客戶想要如何使用它,RemObjects有一個符合其請求的消息/渠道組合。
在使用SuperTcpChannel這麼長時間後,我忘記了還有其他的選擇:) – norgepaul 2010-11-15 17:40:43
如果您使用SOAP,客戶只需導入WSDL就可以輕鬆完成90%的工作。通過一點點努力,您就可以爲WSDL生成註釋,併爲其提供幫助文件,該文件(一旦設置完成)就可以讓文檔保持最新狀態,非常簡單。 IME確保其全部工作的關鍵之一是自己使用API。這樣,它就更有可能成爲可用,完成和工作。如今我不是原始DLL或COM的粉絲,SOAP和REST更加可用。 – 2010-11-14 22:21:08
除了普通的業務邏輯API,我認爲這將是又一個很大的優勢,如果應用程序提供的API對於像通用任務:
很難給出一個問題的答案,除了「它取決於」之外,這個問題一般化了。首先,客戶對「API」意味着什麼? – 2010-11-14 18:07:47
coomunity wiki? – 2010-11-14 18:14:12
@梅森 - 我已經澄清了這個問題。客戶需要一種訪問我們中間層功能的方法。我們需要一種方法讓他們將請求傳遞給我們的服務器並返回結果。 – norgepaul 2010-11-14 19:08:10