我正在用angularjs構建混合應用程序,我試圖從外部來源調用服務。但是,當我撥打電話到URL我收到錯誤無法從遠程json加載數據
XMLHttpRequest cannot load https:XXXX/xxx.json. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost' is therefore not allowed access.
這裏是我的代碼
app.controller('overview', function($scope, $http) {
$http({
method : "GET",
url : "https://ysaf.XXXX.yourcxxxxx/resource.json"
}).then(function appSucces(response) {
$scope.resources = response.data;
}, function appError(response) {
$scope.resources = response.statusText;
});
});
如果我打電話給當地以.json文件我沒有得到任何錯誤,但是,只有當我打電話外部API,我得到這個錯誤。
有什麼我在此代碼做錯了什麼?
您將需要更改服務代碼以允許跨源請求。如果這是不可能的,那麼你可以從你自己的服務器(它不會有任何交叉源問題)調用服務,然後從你的服務器爲你的應用提供json服務 – gaurav5430
這應該是服務器端的處理,但你可以試試這個一個http://stackoverflow.com/a/33662315/5621827在你身邊 – jitender
[Access-Control-Allow-Origin頭文件如何工作?](http://stackoverflow.com/questions/10636611/how-沒有訪問控制,允許原產地 - 頭工作) –