Origin http://xxxxx.comは、Access-Control-Allow-Originによって許可されていません
-
28-10-2019 - |
質問
私はこのようにYahoo Wheather Forcastにリクエストをしようとしています
function parseXml(woeid)
{
$.ajax({
type: "GET",
url: "http://weather.yahooapis.com/forecastrss?w="+woeid,
dataType: "xml",
success: parse_wheather
});
}
そして、次のエラーメッセージが表示されます
XMLHttpRequest cannot load http://weather.yahooapis.com/forecastrss?w=1937103. Origin http://XXXXXXXX.com is not allowed by Access-Control-Allow-Origin.
LocalHostからリクエストを行うことはできないことは知っていますが、LocalHostを実行していません。どうすればこの問題を解決できますか?
解決
私はlocalhostからリクエストをすることができないことを知っています
実際には、同じためです 起源の政策制限 Cross Domain Ajaxコールを送信することはできません。したがって、あなたは限られているだけではありません localhost
. 。あなたは違うものに限定されています http://weather.yahooapis.com
. 。したがって、JavaScriptを含むページがこのドメインにホストされていない限り、Ajaxリクエストを送信することはできません。
これがそうです ガイド クロスドメインAjaxコールについて見てみましょう。あなたの場合、サーバーサイドブリッジを使用できます。そのため、リモートドメインの結果を取得するサーバーサイドスクリプトをドメイン上に定義し、同じオリジンポリシー制限に違反しないようにAjaxリクエストをスクリプトに送信できます。
所属していません StackOverflow