1

我有一个具有以下绑定的服务:

<bindings>
  <mexHttpsBinding>
    <binding name="MetadataHTTPSBinding" />
  </mexHttpsBinding>
  <basicHttpsBinding>
    <binding name="BasicHTTPSBinding" maxBufferPoolSize="2147483646" maxBufferSize="2147483646" maxReceivedMessageSize="2147483646" messageEncoding="Mtom" />
  </basicHttpsBinding>
</bindings>
<services>
  <service name="MyNameSpace.PDFGenerator">
    <endpoint address="" binding="basicHttpsBinding" bindingConfiguration="BasicHTTPSBinding" name="DataEndpoint" contract="MyNameSpace.IPDFGenerator" />
  </service>
</services>

每当我使用 WCF 测试客户端时,该服务都会很好地添加。每当我在 IE 中访问服务 URL 时,它都不会显示有关证书不受信任的错误或警告。但是,每当我尝试在“添加服务引用”对话框中的 Visual Studio 中添加服务时,我仍然遇到问题。

下载“ baseurl /services/PDFGenerator.svc/_vti_bin/ListData.svc/$metadata”时出错。底层连接已关闭:发送时发生意外错误。无法从传输连接读取数据:现有连接被远程主机强行关闭。现有连接被远程主机强行关闭 元数据包含无法解析的引用:“ baseurl /services/PDFGenerator.svc”。向baseurl发出 HTTP 请求时出错/服务/PDFGenerator.svc。这可能是由于在 HTTPS 情况下未使用 HTTP.SYS 正确配置服务器证书。这也可能是由于客户端和服务器之间的安全绑定不匹配造成的。底层连接已关闭:发送时发生意外错误。无法从传输连接读取数据:现有连接被远程主机强行关闭。远程主机强行关闭现有连接如果在当前解决方案中定义了服务,请尝试构建解决方案并再次添加服务引用。

4

1 回答 1

0

事实证明,添加服务时我必须更改 URL。我正在做以下事情

myservername/services/PDFGenerator.svc

但它必须是

myservername.mycompany.com/services/PDFGenerator.svc

我不明白为什么它需要它才能正常工作。

于 2013-07-02T03:23:16.160 回答