次のコードに問題があります。
angular.module('offerServices', ['ngResource'])
.factory('Offer', function ($resource) {
return $resource('url/offers', { callback: 'JSON_CALLBACK' },
{
query: { method: 'JSONP' }
}
);
})
.factory('Trustyou', function ($resource) {
return $resource('https://api.trustyou.com/hotels/:id/seal.json', {},
{
query: { method: 'JSONP' }
}
);
});
Offer.query({}, function(){}); の呼び出し; 私のコントローラーでは問題なく動作します。しかし、この部分は機能していません:
var trustYouData = Trustyou.query({ id: 'd8421e79-99f0-41b2-8d6e-9cfd62a9776b' }, function (data) {
console.log(data);
});
これは常に 400 エラーを返します。
「NetworkError: 400 Bad Request - https://api.trustyou.com/hotels/d8421e79-99f0-41b2-8d6e-9cfd62a9776b/seal.json?callback=angular.callbacks._1」
コードを変更して jQuerys.getJSON を使用すると、問題は発生しません。
$.getJSON("https://api.trustyou.com/hotels/d8421e79-99f0-41b2-8d6e-9cfd62a9776b/seal.json?callback=?", function (data) {
console.log(data);
});
この場合、jQuery メソッドが機能しているのに、angulars $resource 実装がエラーを返すのはなぜですか?