所以,当我查看错误时,我发现它主要与web服务有关 问题是我无法触摸网络服务。但是,在chrome上使用Postman扩展它可以很好地返回数据。所以,我倾向于认为前端有问题。
另外,我使用角度而不是初学者的水平,所以我可能会遗漏一些微不足道的东西。
.factory('forecast', ['$http', function($http){
return $http.get('https://link')
.success(function(data) {
return data;
})
.error(function(err) {
return err;
});
}
]);
答案 0 :(得分:3)
如果您尝试通过REST访问的Web服务没有为您要获取的响应设置该标头,则始终会出现Access-Control-Allow-Origin
错误。
但是,大多数情况下,您可以通过发出Server -> Server
请求而不是Client -> Server (AJAX)
请求来绕过它。
例如,如果您使用NodeJS作为后端并从那里发出请求,然后通过Node将响应发送回您的客户端,您应该没问题。
编辑另外,正如评论中所述(忘记了,谢谢),AngularJS的$http
服务还公开了一种$http.jsonp
方法,您可以使用它来解决这个问题。但是,只有当您尝试访问的Web服务在其API中公开JSONP
信息时才有效。