使用 CURL ...我能够运行以下命令
C:\curl>curl -H "SOAPAction: http://172.16.255.7:5000/client_smart/"
--data @soap.xml http://172.16.255.7:5000/client_smart
在我的 C:\ 驱动器中,我有一个如下定义的 soap.xml 文件:
<?xml version="1.0" encoding="utf-8" ?>
<env:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Body>
<n1:get_client env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:n1="urn:ActionWebService">
<client_id xsi:type="xsd:int">1</client_id>
</n1:get_client>
</env:Body>
</env:Envelope
当我运行命令时,它按预期执行并返回信息。
但是,当我打开 Visual Studio 2008 并尝试将其添加为参考时,我收到此消息
The document at the url http://172.16.255.7:5000/client_smart/wsdl was
not recognized as a known document type. The error message from each
known type may help you fix the problem:
- Report from 'DISCO Document' is 'Discovery document at the URL
http://172.16.255.7:5000/client_smart/wsdl could not
我也试过没有 /wsdl 在 VS2008 的 URL 中...但是得到“无法显示页面”。
对 URL 使用 SoapUI,我收到消息“无法确定 'action_web_service/xsd:string' 的命名空间”
关于为什么 Web 服务可以在 CURL 中工作,但不能在 VS2008 或 SoapUI 中工作的任何想法?
该服务是在 Ruby on Rails 中开发的。