我必须使用API休息,但每次都有这个错误吗?
对预检请求的响应未通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许原点“http://localhost:8100”访问。
$scope.submit = function(login, password){
url = 'http://x.x.x.x:x/x/x/x/x/'+login+'?password='+password;
console.log(url);
instanceId = '1';
tokenId = '';
userId = '';
$http.get(url, {
headers: {
'Accept': 'application/json',
'Context': 'instance='+tokenId+';token='+tokenId+';user='+userId
}
})
.success(function(data){
$scope.firstName = data.user.firstName;
$scope.lastName = data.user.lastName;
$scope.profession = data.user.mission;
userId = data.user.id;*/
localStorage.setItem("userId", JSON.stringify(userId));
$location.path('app/home/');
})
.error(function(data, status){
console.log(data + "-" + status);
alert(status);
});
答案 0 :(得分:0)
CORS只是在使用ionic serve
或ionic run/emulate -l
的开发模式下运行您的应用时的问题,而不是作为与Cordova打包的移动应用运行时,一个简单的选项就是完全禁用CORS以进行本地开发。如果您使用Chrome
进行调试,可以使用名为Allow-Control-Allow-Origin: *的插件来禁用CORS。
或者如果你想解决这个问题,有两种方法:
Ionic CLI proxy server
,ionic提供了一个关于此的精彩博客,请参阅http://blog.ionic.io/handling-cors-issues-in-ionic/。希望这会有所帮助。