在响应中,我从服务器发送了一个自定义标头。在$http响应拦截器中,我想要得到这个头,但我唯一能得到的头是Content-type头。我如何解决我的问题?
我的$http拦截器的一部分:
response: function (response) {
var AuthToken = response.headers('AuthToken');
return response || $q.when(response);
},AuthToken未定义。
发布于 2014-01-26 18:12:13
这是一个CORS问题。
响应应该包括列出您想要使用的特定标头的Access-Control-Expose-Headers。
例如Access-Control-Expose-Headers: AuthToken, AnotherCustomHeader
根据您的服务器设置,可以使用.htaccess文件(Apache)在站点范围内进行设置。
<IfModule mod_headers.c>
Header set Access-Control-Expose-Headers AuthToken,AnotherCustomHeader
</IfModule>或在您的服务器代码中设置每个请求(php)
header('Access-Control-Expose-Headers: AuthToken, AnotherCustomHeader');发布于 2016-12-16 14:53:17
@slamborne,听起来不错。对于.Net
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="Access-Control-Expose-Headers" value="AuthToken"/>
</customHeaders>
</httpProtocol>
</system.webServer>https://stackoverflow.com/questions/20048699
复制相似问题