我在使用 WCF 测试客户端时遇到问题。我无法连接到我的 WebService,因为它一直遇到此错误:
错误:无法从 http://xxx.xxxxxxxx.xxx/DPITerminal.svc获取元数据如果这是您有权访问的 Windows (R) Communication Foundation 服务,请检查您是否已在指定地址启用元数据发布。有关启用元数据发布的帮助,请参阅位于 http://go.microsoft.com/fwlink/?LinkId=65455.WS-Metadata Exchange Error URI: http://xxx.xxxxxxxx.xxx/DPITerminal.svc
的 MSDN 文档 元数据包含无法解析的引用:“http://xxx.xxxxxxxx.xxx/DPITerminal.svc”。内容类型应用程序/soap+xml;服务http://xxx.xxxxxxxx.xxx/DPITerminal.svc不支持 charset=utf-8 . 客户端和服务绑定可能不匹配。远程服务器返回错误:(415)无法处理消息,因为内容类型'application/soap+xml; charset=utf-8' 不是预期的类型 'text/xml; charset=utf-8'..HTTP GET 错误 URI: http://xxx.xxxxxxxx.xxx/DPITerminal.svc 下载“http://xxx.xxxxxxxx.xxx/DPITerminal.svc”时出错。
这是我的 Web.Config: Link。
如您所见,我已经有了
<serviceMetadata httpGetEnabled="true" />
也
<endpoint address="mex" binding="mexHttpBinding" bindingConfiguration="mex" contract="IMetadataExchange" />
正如其他 StackOverflow 问题中所建议的那样。还是不行。
我还注意到,当我评论以下端点时:
<endpoint address="x" behaviorConfiguration="poxBehavior" binding="webHttpBinding" bindingConfiguration="web" contract="xxx.xxxxxxxx.xxxxxx.WebService.IDPITerminal" />
一切都按预期工作。所以我猜我的 XML Endpoint 有问题?这很奇怪,因为 XML 端点共享 JSON 端点的绑定配置,而 JSON 没有任何问题。
另外,让我澄清一下,我只是在使用 WCF 测试客户端时遇到问题。JSON 和 XML 端点都工作正常。
编辑:
我尝试评论 XML 端点,发布,然后通过 WCF 测试客户端连接。然后我取消注释 XML Endpoint,重新发布。WCF 测试客户端仍然有效——我的意思是我可以发送和接收数据。当我刷新服务时,再次弹出无法获取元数据错误。