我们有一个使用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