如何为Delphi Synapse HTTP Server添加SOAP接口?

时间:2013-01-23 12:29:20

标签: delphi soap delphi-7

我有一个使用Delphi 7和Ararat Synapse创建的自定义HTTP服务器,它使用一组简单的变量从另一个应用程序接收HTTP GET。

例如:http://myserver.com/get?Variable1=adsds&Variable2=asdasdasdsa&Variable3=aasdsadasdsad

应用程序源与此类似 - http://searchco.de/codesearch/view/13374072

现在,我的客户需要我提供一个SOAP接口。对SOAP完全不熟悉,我做了一些研究,发现它非常复杂。我想知道将此接口合并到我的HTTP服务器的简单方法是什么。或者,如果有这样的软件,我应该找到现成的SOAP To HTTP Conversion应用程序。谢谢。

注意:我不是HTTP Server的原始开发人员。

2 个答案:

答案 0 :(得分:4)

您需要编写一个SOAP服务器,它不仅可以从SOAP请求生成SOAP响应,还可以提供一个WSDL文档,告诉用户他们可以做出哪些请求。

由于您对SOAP的全新内容是一些“初学者”链接:

一般:

SOAP, WDSL, HTTP, XSD? What the?
List of publicly available web services(我会开始编写一个使用SOAP的小型测试应用程序)

使用Delphi:

Developing Web Services with Delphi
Web Services Made Easy With Delphi
Web services with Delphi

你使用Delphi 7的事实使事情变得更加困难,因为后来的版本有更好的支持:
Debugging/Testing Win32 SOAP Web Services (D2007)。 Bob有more SOAP articles

要测试服务和使用SOAP,您应该使用SoapUI,一个很棒的免费工具(What is SOAPUI?)。

一旦你完成了WDSL,你should know what types of WSDL exist并且整个名称空间一团糟......

答案 1 :(得分:4)

Free Pascal和Delphi有Web Service Toolkit可用于编写SOAP服务器。

我自己还没有使用它,但它正在积极开发中,可能与Synapse兼容。

更新:当前版本似乎包括对Internet Direct(Indy)和Synapse(HTTP服务器和TCP服务器)的支持。