我尝试为$ http服务添加默认标头,该值是在用户验证后生成的访问标记。
.config(['$httpProvider', function($httpProvider) {
$httpProvider.defaults.useXDomain = true;
delete $httpProvider.defaults.headers.common['X-Requested-With'];
$httpProvider.interceptors.push('httpRequestInterceptor');
}])
.factory('httpRequestInterceptor', function () {
return {
request: function (config) {
config.headers = {
'Authorization': sessionStorage.token}
return config;
}
};
})
但Angular不接受标题:A ccess-Control-Request-He... authorization
。
我尝试使用$http.defaults.headers.common.Authorization = 'Basic YmVlcDpib29w'
和许多其他但没有任何作用。
我使用Rest Console测试了API,并接受了标题。
问题来自我的申请......
响应
- Access-Control-Allow-Head... Accept,Origin,Authorization,Content-Type,X-Requested-With
- Access-Control-Allow-Meth... GET, POST, PUT, DELETE
Access-Control-Allow-Orig... *
- Access-Control-Expose-Hea... Authorization Cache-Control no-store,
no-cache, must-revalidate, post-check=0, pre-check=0
请求
- Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
- Accept-Encoding gzip, deflate
- Accept-Language en-us,en;q=0.5
- **Access-Control-Request-He... authorization**
- Access-Control-Request-Me... GET
- Connection keep-alive
- Host api.mysite.com
- Origin http://xxxxx.com:8080
答案 0 :(得分:0)
该应用程序适用于我的域api!这是CORS的一个问题。我的服务器上有可能吗?用htacess?因为我的标题允许来源:*在我的api ...
答案 1 :(得分:0)
尝试将它放在你的.htaccess上 标题集设置Access-Control-Allow-Origin" *" 标题集设置Access-Control-Allow-Headers"授权,内容类型"