0

$resource を間違って使用している (おそらく、今日 angular を使い始めたばかりです) か、JSON が正しくありません。

AngularJS フィドル: http://jsfiddle.net/8zVxH/1/および関連コード:

angular.module('app', ['ngResource']);

function AppCtrl($scope, $resource) {
var url = 'http:,,api.petfinder.com,pet.getRandom;key=260f9e3a6f6670b5d9db68b281ebe7a9;format=json;location=51503';
$scope.petfinder = $resource('http://jsonproxy.aws.af.cm/proxy/:action', 
                                 {action:url, callback:'JSON_CALLBACK'},
                                 {get: {method:'JSONP'}});

$scope.indexResult = $scope.petfinder.get();

}

jQuery Fiddle: http://jsfiddle.net/78Cab/および関連コード

$.ajax({
  url: 'http://jsonproxy.aws.af.cm/proxy/http:,,api.petfinder.com,pet.getRandom;key=260f9e3a6f6670b5d9db68b281ebe7a9;format=json;location=51503',
  method: 'GET'
}).done(function (data) {
  console.log(data);
});

jQueryフィドルは同じURLをヒットして動作します..

この JSON URL http://jsonproxy.aws.af.cm/proxy/http:,,api.petfinder.com,pet.getRandom;key=260f9e3a6f6670b5d9db68b281ebe7a9;format=json;location=51503をヒットすると、 http://jsonlintが渡されます.com/を有効な JSON として

他の誰かが同様の問題を抱えていますか?

4

1 に答える 1

0

私はそれを考え出した。サービスは有効な JSON を返していましたが、$resource 呼び出しは JSONP を想定しており、プラン JSON を使用するほどスマートではありませんでした。JSON だけでなく、コールバック (JSON) を返すようにサービスを変更する必要がありました。

于 2013-02-03T15:21:36.290 に答える