WCF Web服务和SSL的问题

时间:2012-11-30 01:43:54

标签: asp.net wcf ssl

我在最后几个小时读过很多帖子,但是我没找到适合我的解决方案:-(

因为我的Windows Phone 7应用程序通过SSL调用SVC-Webservice时遇到了多个其他用户。在localhost上它工作正常。我在Web应用程序中部署了Webservice。服务“MyService.svc”位于Web应用程序的根目录中。在IIS上,我只为此IP添加了HTTPS(来自Startcom,使用默认端口443)并且需要SSL。我可以打开我的Web应用程序,我可以使用http://mydomain.com/MyService.svc的任何浏览器从服务器和本地开发机器打开Webservice。该页面说我可以调用svcutil.exe https://mydomain.com/MyService.svc?wsdl。当我点击链接时,数据显示正确。

现在,当我尝试通过WP7应用程序访问它时,我总是会收到以下错误: https://mydomain.com/MyService.svc没有可以接受该消息的端点。这通常是由不正确的地址或SOAP操作引起的。有关更多详细信息,请参阅InnerException(如果存在)。” 内部细节说:“远程服务器返回错误:NotFound。” 这是我的web.config的重要部分。我不知道这是否都是必需的,因为我已经从多个线程复制了它,但至少在IE中它工作正常:

<system.serviceModel>
    <behaviors>
        <serviceBehaviors>
            <behavior name="MyBehavior">
                <serviceMetadata httpsGetEnabled="true" httpGetEnabled="false" />
                <serviceDebug includeExceptionDetailInFaults="true" />
                <dataContractSerializer maxItemsInObjectGraph="1073741824" />
                <useRequestHeadersForMetadataAddress>
                    <defaultPorts>
                        <add scheme="https" port="443" />
                    </defaultPorts>
                </useRequestHeadersForMetadataAddress>
            </behavior>
        </serviceBehaviors>
    </behaviors>
    <services>
        <service behaviorConfiguration="MyBehavior" name="MyNamespace.MyService">
            <endpoint address="" binding="wsHttpBinding" bindingConfiguration="HttpsBinding"
                      contract="MyNamespace.IMyService">
            </endpoint>
            <endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange"/>
        </service>
    </services>
  <bindings>
    <wsHttpBinding>
      <binding name="HttpsBinding">
      <readerQuotas maxStringContentLength="2147483647" />
        <security mode="Transport">
          <transport clientCredentialType="None"/>
        </security>
      </binding>
    </wsHttpBinding>
  </bindings>
  <!-- <serviceHostingEnvironment multipleSiteBindingsEnabled="true" /> -->

非常感谢!

0 个答案:

没有答案