当我调试 Web 服务项目(在 Visual Studio 中)“测试客户端 WCF”启动时,有一个 Web 服务(WCF 服务库)(所以我猜它是通过测试客户端托管的)。我有一个名为“Test”的 Web 服务方法,它返回字符串。当我使用测试客户端 WCF“调用”该方法时 - 它可以工作。
当我想将浏览器用作客户端时。我转到http://localhost:9001/Name/WebService/WebAPI并看到 Web 服务(带有一些有关方法的信息的 xml)。现在我想用 JavaScript 来调用那个 Test 方法。
我创建了一个类似于此https://stackoverflow.com/a/11404133的客户端,并将sr
变量(SOAP 请求)替换为请求,该请求位于“测试客户端 WCF”中的测试方法的 XML 部分和用于 url我选择了http://localhost:9001/Name/WebService/WebAPI。我尝试了那个 JavaScript 客户端,但我得到了一些客户端错误 -
content-type 'text-xml'
无效,需要服务器'application/soap+xml; charset=utf-8'
(不幸的是,现在我无法访问网络服务,所以我不知道错误的数量和确切的消息,但是除了内容类型之外没有其他信息)。因此,我将请求标头更改为'application/soap+xml; charset=utf-8'
,但随后出现错误 - 这告诉我:
由于 EndpointDispatcher 的 AddressFilter 不匹配,无法在接收方处理该消息。检查发送方和接收方的 EndpointAddresses 是否一致
(或类似的东西 - 我不得不把它翻译成英文)
我还尝试了使用现有服务的“JavaScript 客户端”,这是我在互联网上找到的text/xml
内容类型。它工作正常。
请问您有什么建议 - 如何用 JavaScript 调用 Test 方法?谢谢。