3

https サイトで Web サービスにアクセス中にエラーが発生しました。httpsバインディングを探しているため、これは構成エラーだと思います。

Web サービスの web.config は次のとおりです。

<?xml version="1.0"?>
<configuration>
<system.serviceModel>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true"/>
<services>
  <service name="WebService.ListViewWebService" behaviorConfiguration="WebService.ListViewWebServiceBehavior">
    <endpoint address=""
              behaviorConfiguration="WebService.ListViewWebServiceAjaxBehavior"
              binding="webHttpBinding"
              contract="WebService.IListViewWebService"/>
    <endpoint address="https://win-d741qhlbivf:13241/services/DPT/_vti_bin/DPT.WebService/ListViewWebService.svc"
              behaviorConfiguration="WebService.ListViewWebServiceAjaxBehavior1"
              binding="webHttpsBinding"
              contract="WebService.IListViewWebService2"/>
     <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />         
  </service>
</services>
<bindings>
    <basicHttpBinding>
        <binding name="webHttpBinding">
            <security mode="None" />
        </binding>
        <binding name="webHttpsBinding">
            <security mode="Transport" />
        </binding>
    </basicHttpBinding>
</bindings>
<behaviors>
  <endpointBehaviors>
    <behavior name="WebService.ListViewWebServiceAjaxBehavior">
      <webHttp/>
    </behavior>

  </endpointBehaviors>
  <serviceBehaviors>
    <behavior name="WebService.ListViewWebServiceBehavior">
      <serviceDebug includeExceptionDetailInFaults="true"/>
      <serviceMetadata httpGetEnabled="true" />
    </behavior> 

  </serviceBehaviors>
</behaviors>
</system.serviceModel>
</configuration>

事前に助けてくれてありがとう。

また、これが問題と関係があるかどうかはわかりませんが、クラウド環境でホストされている Web アプリケーション...そのために特別な構成が必要ですか?...

再度、感謝します..

4

3 に答える 3

0

この構成は、 HTTP および HTTPS のリクエストに応答します。ポートが異なり、ホストが期待するものと一致する必要があることに注意してください (この場合は、たまたま iis です)。

<appSettings>
    <add key="aspnet:UseTaskFriendlySynchronizationContext" value="true" />
</appSettings>
<system.web>
    <compilation debug="true" />

        <customErrors mode="Off"/>
    </system.web>



<system.serviceModel>
    <serviceHostingEnvironment minFreeMemoryPercentageToActivateService="0" />

    <services>
        <service name="KPIGetter_Library.KPIGetter">

            <endpoint address="" 
                    behaviorConfiguration="restfulBehaviour"
                    binding="webHttpBinding" 
                    bindingConfiguration="webHttpBindingWithJsonP"
                    contract="KPIGetter_Library.IKpiGetter" />


            <endpoint address="" 
                    behaviorConfiguration="restfulBehaviour"
                    binding="webHttpBinding" 
                    bindingConfiguration="webHttpsBindingWithJsonP"
                    contract="KPIGetter_Library.IKpiGetter" />

            <host>
                <baseAddresses>
                    <add baseAddress="http://hodbd05:8000/kpigetter" />
                    <add baseAddress="https://hodbd05:8001/kpigetter" />
                </baseAddresses>
            </host>
        </service>
    </services>

    <behaviors>
        <endpointBehaviors>

            <behavior name="restfulBehaviour">
                <webHttp/>
            </behavior>
        </endpointBehaviors>

        <serviceBehaviors>
            <behavior>
                <serviceDebug includeExceptionDetailInFaults="true" />
            </behavior>
        </serviceBehaviors>
    </behaviors>

    <protocolMapping>
        <add binding="webHttpBinding" scheme="http" />
    </protocolMapping>

    <bindings>
        <webHttpBinding>
                <binding name="webHttpBindingWithJsonP" crossDomainScriptAccessEnabled="true">
                     <security mode="None" />
                </binding>

                <binding name="webHttpsBindingWithJsonP" crossDomainScriptAccessEnabled="true">
                     <security mode="Transport" />
                </binding>
        </webHttpBinding>

    </bindings>
</system.serviceModel>

于 2014-02-12T17:31:38.677 に答える
0

私のチュートリアルの 1 つが役立ちます。

http://netpl.blogspot.com/2010/05/how-to-programmatically-configure-ssl.html

このチュートリアルでは、宣言型の構成から始めて、バインディング/エンドポイントをプログラムで作成する方法を示します。

于 2012-06-17T13:57:44.590 に答える
0

重要な問題は、ajax 対応の WCF サービスには basicHttpBinding ではなく、webHttpBinding を使用する必要があることです。

簡単な作業例がここにあります: asp.net の Scott のブログ

于 2014-06-26T15:33:52.373 に答える