0

文脈を入れるだけです。ASP.NET MVC2 Web API 5 IIS 7

WCF Web API を使用しようとしていますが、HTTPS を有効にするとすぐに機能しなくなります。

私が気付いたこと: jquery を介して行う API 呼び出しで、URL として次のようなものがあり ます。

API テスト UI を使用すると: https://www.domain.com/api/serviceApi/Test テスト URL が表示されます: https://devserver.ad.domain.com/api/serviceapi/SetForeignToken? token=ASDAS-ASDAS-ASDASD-ASDASDAS&foreignToken=AS123ASD 以前は HTTPS なしで行っていたように、通常の DNS を保持するのではなく、DNS をマシン名に解決するのは奇妙に思えます。

HTTPSでこれを機能させるようにAPIを構成する方法を知っている人はいますか、それとも可能ですか?

ありがとう、

PS。開発環境には自己署名証明書があり、本番環境には実際の証明書があります。

4

2 に答える 2

1

はい、WCF Web API は HTTPS をサポートしています。これを行うにはいくつかの方法があると思います(コードオプションを含む)。1 つのサーバーでのみ https を有効にしたかったので、web.config でこれを行いました。

  <system.serviceModel>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true">
        <baseAddressPrefixFilters>
            <add prefix="https://subdomain.example.com"/>
        </baseAddressPrefixFilters>
    </serviceHostingEnvironment>
    <bindings>
      <webHttpBinding>
        <binding>
          <security mode="Transport" />
        </binding>
      </webHttpBinding>
    </bindings>
  </system.serviceModel>  
于 2011-10-31T21:54:13.143 に答える
0

みんなありがとう。これを理解するために一日中過ごしました。コードを web.config に追加しただけで機能しました。

于 2013-01-07T16:24:12.923 に答える