2011-11-08 14 views
0

WCF Restベースのサービスを使用してデータを取得しようとしています。IE以外のブラウザでXMLHTTPRequestが機能しない

これは私のコードです。

jQuery.support.cors = true;

 $.ajax({ 
      url: http://localhost:2545/Service/GetData, 
      data: JSON.stringify(temp), 
      beforeSend: function (xhr) { xhr.setRequestHeader("Access-Control-Allow-Origin", "*"); }, 
      type: "POST", 
      contentType: "application/json charset=utf-8", 
      dataType: "Json", 
      crossdomain: true, 
      success: function (result) { ProximitySucceeded(result) }, 
      error: function (result) { debugger; ServiceFailed(result) } 
     }); 

私のウェブサイトは、http://localhost:1600上で実行され、サービスがhttp://localhost:2545です。

IE上で動作します。しかし、このエラーを返すchrome/firefox/safariの場合 "Origin http://localhost:1600の原点はAccess-Control-Allow-Originによって許可されていません。"

IE以外のブラウザからサービスにアクセスすることはできません。

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

+0

なぜ**アクセス**許可** ** **ヘッダーとしてアクセス制御を許可しようとしていますか? – Quentin

+0

合意、Access-Control-Allow-Originは要求に設定すべきものではなく、応答時にサーバーによって設定される必要があります。 localhostからlocalhostにリクエストしているので、実際のHTTPリクエストのトレースを得るためにWiresharkを使用できますか? – monsur

答えて

0

これは、クロスサイトスクリプティングとしてカウントされる可能性があり、異なるポートが別のドメインになるため、拒否されている可能性があります。

これを回避するには、プロキシをセットアップする必要があります。

希望があります

関連する問題