如何在Perl中创建SOAP服务器?

时间:2010-01-16 13:54:44

标签: perl soap

我正在与第三方供应商合作,不幸的是我们要求我们设置一个SOAP服务器来处理来自它们的请求。我找不到最好的方法来解决这个问题。我强加的一个限制是它作为mod_perl2处理程序运行。经过一些搜索后,我发现最好的方法可能是使用XML :: Compile及其SOAP类,但是我很难绕过它。问题的一部分是我对SOAP的理解有限,大多数模块的文档对我来说似乎有点神秘。

那么,任何人都可以给我一些指示,示例代码,任何东西吗?

编辑:我们还获得了一个WSDL文件,这与SOAP :: WSDL不兼容(“不支持的全局类型... 看起来像一个rpc / literal WSDL,SOAP :: WSDL不支持

编辑:XML :: Compile :: SOAP抱怨“当使用带有XML :: Compile :: WSDL11的WSDL时,此版本不支持RPC编码”。可以/我应该不担心WSDL文件吗?

2 个答案:

答案 0 :(得分:3)

如果您对SOAP的理解有限,请在担心实现之前开始阅读SOAP。那里有很多SOAP tutorials。大多数文档可能看起来很神秘,因为你还不知道SOAP。

这个过程并不是那么棘手。当涉及到重大步骤时,它与任何其他网络编程没有什么不同:

  • 您收到一个SOAP请求,这是一些XML。
  • 你拆开XML以找出要做的事情。
  • 您将一些XML放在一起作为回复发送。
  • 您返回回复。

XML::Compile将为您处理大部分细节。

在开始编写自己的服务器之前,您可能会考虑为现有的SOAP服务器编写客户端,只是为了给自己一些练习。

答案 1 :(得分:1)

我找到了两个可以帮助你制作肥皂服务器的模块,但我从不使用它的

https://metacpan.org/pod/XML::Compile::SOAP::Daemon

https://metacpan.org/pod/SOAP::WSDL::Server