Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
angularjs$resource JSONP不';行不通_Angularjs_Resources_Jsonp - Fatal编程技术网

angularjs$resource JSONP不';行不通

angularjs$resource JSONP不';行不通,angularjs,resources,jsonp,Angularjs,Resources,Jsonp,我创建了这个列表工厂 factory('ListFactory', ['$resource', function ($resource) { // var Chiamate = $resource('http://samedomain.com/file.json', {}, { var Chiamate = $resource('http://anotherdomain.com/file.json', {}, { query: { // method: '

我创建了这个列表工厂

factory('ListFactory', ['$resource', function ($resource) {
//   var Chiamate = $resource('http://samedomain.com/file.json', {}, {
   var Chiamate = $resource('http://anotherdomain.com/file.json', {}, {
    query: {
//            method: 'JSONP',
        method: 'GET',
        isArray: true,
        cache : false,
    }
});

return {
  query: function(id) {
        chiamate = Chiamate.query();
     return chiamate;
  }
};
}]);
在控制器中,我使用 $scope.results=ListFactory.query()

并将结果显示到html中 {{results}}

如果我尝试在同一个域中下载json文件 使用方法:'GET',=>ok我看到了资源

如果我尝试在另一个域中下载json文件 使用方法:'GET',=>KO我看到了这个错误:

XMLHttpRequest无法加载请求的资源上没有“Access Control Allow Origin”标头。因此,不允许访问源“”

如果我尝试在另一个域中下载json文件 使用方法:'JSONP',=>KO我没有看到任何错误,但我没有看到结果:

我用


有什么想法吗?你能帮我在另一个域上获取json文件吗?

你需要远程站点的合作才能正常工作。他们需要发送带有您的站点名称的访问控制允许来源,否则浏览器将抛出您看到的错误

请参阅下面的stackoverflow问题,该问题有更详细的答案


您是否有一些服务器端代码将json转换为jsonp?如果没有,您唯一的选择就是使用另一种技术,如服务器端php/asp/node等,或者在anotherdomain.com上实现CORS。