0
私はCORSのリクエストをgoogleに伝えたいと思います(実際にはjsonデータを返すウェブサイトにアクセスしています)。以下は私のAjaxのコードは次のとおりです。上記のコードではAjax/Javascript/Djangoを使用したCORSリクエスト
$.ajax({
url: "https://www.google.com",
type: "get",
dataType: "json",
crossDomain: true,
success: function(data, textStatus) {
alert ("success" + data);
},
error: function(data, textStatus) {
alert ("fail" + data);
}
})
私はこのエラーを得た:
XMLHttpRequest cannot load https://www.google.com/. Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://sdlweb-dev:1234' is therefore not allowed access. The response had HTTP status code 405.
私は
headers: {
"Access-Control-Allow-Origin": "*",
"Access-Control-Allow-Headers": "X-Requested-With,content-type",
"Access-Control-Allow-Credentials": true
}
ようなコードを追加してみましたが、それでも同じエラーを得ました。
dataTypeを 'json'から 'jsonp'に変更しようとしました。このように要求が送信されますが、応答はJSONPされていないので、私は別のエラーました:私が持っていないので、(私は、私はへの要求を取得送信URLを意味し、サーバー側を変更せずに
Uncaught SyntaxError: Unexpected token <
を私はCORSリクエストを送ることができますか?
ご迷惑をおかけして申し訳ございません!
おかげで、
飛
ありがとうございます!サーバーは、アクセスしようとしているサーバーを意味します。 (自分のウェブサイトをホストしている私のサーバーではない) – Feiiiiiiiiiiiii
また、dataTypeを "jsonp"に設定することで応答を得ることができます。しかし、返されるデータ型は "jsonp"ではないので、何とかそれをラップして内容を取得する方法はありますか? – Feiiiiiiiiiiiii
@Feiiiiiiiiiiiiiあなたの最初のコメントに答える:はい。あなたの第二に答える:いいえ。 – idbehold