データを提供するRestful WebService ServicesでAJAX CascadingドロップダウンとAutoComplete機能を使用しています。httpsで同じWebページを試すまで、1つのエンドポイント(セキュリティで保護されていない)すべてが正常に機能していました。私たちの Web アプリケーションは両方をサポートする必要があります。この問題に関する非常に少数の記事/ブログの中で、私の要件に当てはまるものを 2 つ見つけました。
- http://blog.abstractlabs.net/2009/02/ajax-wcf-services-and-httphttps.html
- http://www.mydotnetworld.com/post/2008/10/18/Use-a-WCF-Service-with-HTTP-and-HTTPS-in-C.aspx
私は同じパターンに従い、WCF が HTTP または HTTPS プロトコルを見て適切なエンドポイントをピックアップすると仮定して、2 つのエンドポイントを追加しました。私の開発マシン (XP-IIS5) と 1 つのサーバー 2003R2 (IIS6) では魅力的に機能しましたが、運用サーバー 2003-IIS6 でも機能しました。IISのWebサイトはまったく同じです(許可などを含む)。スローされるエラー - エラー 500 (バインディング WebHttpBinding を持つエンドポイントのスキーム https に一致するベース アドレスが見つかりませんでした。登録されたベース アドレス スキームは [http] です..)
サンプル構成は次のとおりです (タイプミスは無視してください)。
<system.serviceModel>
<bindings>
<webHttpBinding>
<binding name="SecureBinding">
<security mode="Transport"/>
</binding>
</webHttpBinding>
</bindings>
<behaviors>
<endpointBehaviors>
<behavior name="SearchServiceAspNetAjaxBehavior">
<enableWebScript />
</behavior>
</endpointBehaviors>
</behaviors>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" />
<services>
<service name="SearchService">
<endpoint address="" behaviorConfiguration="SearchServiceAspNetAjaxBehavior"
binding="webHttpBinding" contract="SearchServiceContract" />
<endpoint address="" behaviorConfiguration="SearchServiceAspNetAjaxBehavior"
binding="webHttpBinding" bindingConfiguration="SecureBinding" contract="SearchServiceContract" />
</service>
</services>
</system.serviceModel>
これに関するヘルプは大歓迎ですか?
ありがとうございます