我正在将C#.NET SOAP应用程序从一台服务器移植到一台新服务器。在原始服务器上,我可以传递URL http://oldserver.com/myapp.asmx/method1
,并返回带有结果的XML文件。
在新服务器上,这不起作用。它回复500 Internal Server Error
。 SOAP接口正在运行,因为我可以使用urllib2和suds使用Python应用程序在新服务器上调用相同的方法。
如何在新服务器上实现相同的行为?我们有一个产品使用基于URL的SOAP请求检查更新,因此新服务器必须能够这样做,以便与现场产品向后兼容。
旧服务器是否有可能以某种方式将URL转换为SOAP请求,然后再将其传递给应用程序?不幸的是我只有ftp访问旧服务器。 HTTP标头告诉我,我正在与Microsoft-IIS/6.0
通话。
答案 0 :(得分:0)
我发现了问题。它在web.config文件中。旧服务器包含:
<webServices>
<protocols>
<add name="HttpGet"/>
</protocols>
</webServices>
这似乎可以调用基于URL的方法。