//individual logins
$rootScope.setting.instances.forEach(function(ins) {
var header = {
"Accept": "application/json",
"Authorization": "Basic " + btoa( ins.uname + ':' + ins.pword ),
"Access-Control-Allow-Origin" : "*",
"Access-Control-Allow-Methods" : "GET, POST, DELETE, PUT, JSONP"
};
$http({ method : 'post', url : ins.url, headers: header })
.success( function( data )
{
console.log( ins.name +" login success" );
$("#fail" + ins.id ).hide();
$("#succ" + ins.id ).show();
//logins : a global variable declared in app.js
logins.push('{"ins" : '+ ins.id + ',"isAvailable" : "true"}');
checkFinished();
})
.error( function( data)
{
console.log( ins.name +" login failed" );
$("#fail" + ins.id ).show();
$("#succ" + ins.id ).hide();
//logins : a global variable declared in app.js
logins.push('{"ins" : '+ ins.id + ',"isAvailable" : "false"}');
checkFinished();
});
});
}发布于 2015-12-04 14:47:14
CORS规范要求,如果在跨域请求上指定了任何自定义头部,则浏览器需要使用OPTIONS请求对请求进行预检。而且,当它执行OPTIONS印前检查时,它不包括您的自定义标头,因为OPTIONS请求的部分目的是找出允许在请求上发送哪些自定义标头。因此,如果服务器希望在浏览器中工作,它就不应该在OPTIONS请求上要求自定义标头。
因此,如果您不希望它使用OPTIONS请求进行预检,那么您就不能在请求上使用自定义标头。
https://stackoverflow.com/questions/34082240
复制相似问题