2017-07-13 6 views
0

私はwebformsサイトを持っており、同じサイトのページにJQuery経由でWebリクエストを作成しようとしています。しかし、私がアクセスしようとしているページは、Jqueryが使用されているページがHTTPではなくHTTPS上にあります。 「Access-Control-Allow-Origin」に関するエラーが表示されたので、次のようにweb.configを追加しました。CORS IIS7を設定する

<httpProtocol> 
     <customHeaders> 
     <add name="Access-Control-Allow-Origin" value="*" /> 
     </customHeaders> 
    </httpProtocol> 

そして、私は今のXMLHttpRequestがhttps://www.example.com/をロードすることはできません

次のエラーを取得するしかし、これは

<script type="text/javascript"> 
    $(document).ready(function() { 
     $.ajax({ 
      type: "GET", 
      headers: { 
       "Access-Control-Allow-Origin": "*" 
      }, 
      url: "https://www.example.com", 
      success: function (resp) { 
       //register browser as supported 
       console.log("supported"); 
      }, 
      error:function(e){ 
       //register browser as unsupported 
       console.log(e); 
       console.log("unsupported"); 
      } 
     }) 
    }) 
</script> 

私のjQueryのです。 プリフライト要求に応答してアクセス制御チェックを通過しません。いいえ 要求された リソースに 'Access-Control-Allow-Origin'ヘッダーが存在します。したがって、オリジン 'http://www.example.com'は許可されません。

これを機能させるには、何が必要ですか?

+0

「Access-Control-Allow-Methods」も追加してみてください。また、jQuery AJAX呼び出しから 'headers'プロパティを削除することもできます。ヘッダーは要求で冗長です。 –

+0

を追加しましたが、エラーを修正しません。しかし、ajaxリクエストからヘッダーを削除すると、「XMLHttpRequestはhttps://www.example.com/をロードできません」というオリジナルのエラーが戻されます。「Access-Control-Allow-Origin」ヘッダーは、したがって、http://www.example.com 'はアクセスが許可されていません。 – coolblue2000

+0

あなたの設定は上手く見えますが、応答には適用されないようです。コンソールの[ネットワーク]タブでヘッダーを確認して確認できます。私が提案できるのは、ウェブサイト自体のweb.config内のヘッダーを上書きしていないことを再度確認することです。 –

答えて

0

私は何が起こっているかを認識しました。我々はルートサイトであるCMSシステムがあるが、システムの残りの部分が独自のwebformsアプリケーションであるという奇妙な設定をしている。 CMSシステムのweb.configが最初に呼び出され、変更が必要な場所ですが、メインサイトのweb.configで作成されています。

愚かな設定....

ありがとうございました。

関連する問題