私は別のサーバーにあるAPIを使用しています。奇妙なことは、それが最初に何の問題もなく働いていたということです、そして、私はcrossDomain: "true"
追加このエラーメッセージjsonとjqueryで要求されたリソースエラーに「アクセス制御許可元」ヘッダーがありません
XMLHttpRequest cannot load http://www.thecocktaildb.com/api/json/v1/1/random.php? tagmode=any&type=POST&format=jsonp. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'myadress.com' is therefore not allowed acces
を持って、それが一日のために働きました。今、それは再び働かないと私は検索し、私が見つけた多くのソリューションを試してみました。しかし、何も動作しません。問題は何ですか?どのように修正しますか? json
の代わりにjsonp
を試してください。と&コールバック=?何もしません。私も、CORSの拡張機能をインストールしました。しかし、たぶん同じエラー、私はAPI自体またはそれをホストしているサーバーを制御することはできません。これをどうすれば解決できますか?以下は私のコードです。私は右のあなたがあなたのページとは異なるドメインにAJAX call
を行っていることを理解している場合
function random() {
$(document).ready(function() {
$.getJSON("http://www.thecocktaildb.com/api/json/v1/1/random.php", {
tagmode: "any",
type: "POST",
format: 'jsonp',
crossDomain: "true"
}, function (data) {
console.log(data);
var result = "";
$.each(data.drinks, function (index, value) {
result += "<p>" + value.idDrink + "<p>";
result += "<p>" + value.strDrink + "<p>";
});
$('#result').html(result);
console.log(result);
});
});
}
サイトでヘッダーが設定されていないため、最後から何もできません。 Seversideプロキシが必要なものです。 – epascarello
サーバはjsonp BUT jsonを返しません。独自のサーバーを使用してリクエストをプロキシする必要があります –