[英]Angularjs and HTTP headers
我想在每次发出请求时将自定义HTTP标头发送到REST服务。 我正在使用Apache HTTP Web Server。 我有以下代码:
app.config(['$httpProvider', function($httpProvider){
if(!$httpProvider.defaults.headers.get){
$httpProvider.defaults.headers.get = {};
}
$httpProvider.defaults.headers.get['My-Token'] = 'some_test_token';
}]);
但我在devtools中看到了下一个:
我的标题内联到其他。 我究竟做错了什么?
您提供的屏幕截图处理OPTIONS请求,而您正在配置GET请求。 OPTIONS请求作为HTTP中内容协商实现的一部分发送。
在这种情况下,您将发送预检OPTIONS请求,该请求反过来表明您将来的请求将包含my-token
标头。 这是期望的行为,因为服务器现在可以指示客户端不继续此请求或执行条件操作。
在您的浏览器(或您用于调试HTTP的其他软件)中,查找GET请求,您应该看到正确包含的标头。
问题不在于AngularJS方面。 我只是配置Apache HTTP服务器和我的应用程序的后端部分。 我的Spring Security过滤器链阻止了OPTIONS请求。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.