繁体   English   中英

Angularjs和HTTP标头

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM