$http({
method: 'GET',
url: $scope.geoURL,
}).success( function(response) {
window.alert("3.");
$scope.resp = response;
window.alert("3."+response.status);
}).error(function (){
window.alert("-3");
});
导致以下问题:
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://175.107.196.142/search/getPlaceInfoForLocation_v0.0.php?lat=33.541404&lng=73.146358. (Reason: CORS header 'Access-Control-Allow-Origin' missing).
这不是浏览器的问题,从浏览器直接调用时,可以完美地调用相同的URL。
答案 0 :(得分:0)
如果您可以控制API服务,请添加以下HTTP标头:
Access-Control-Allow-Origin: *
如果您无法控制API服务,则可以在浏览器和API服务之间设置代理。例如。使用NPM包https://www.npmjs.com/package/cors-anywhere
答案 1 :(得分:0)
您需要做的就是允许您请求的来源,或者允许所有来源。将其添加到您的API。您的API需要将此标头与响应一起发回。
var newEnemy = new enemy("rgb(" + Math.floor(Math.random() * 200) + "," + Math.floor(Math.random() * 200) + "," + Math.floor(Math.random() * 200) + ")", Math.floor(Math.random() * ((500 - 0) / 20)) * 20 + 0, Math.floor(Math.random() * ((500 - 0) / 20)) * 20 + 0);
newEnemy.move();
enemyNum = enemyNum + 1;
}, 10000);
你也有其他一些选择。
https://daveceddia.com/access-control-allow-origin-cors-errors-in-angular/