vue项目中调用接口时,获取Reasponse Headers中Headers值,打印不存在,是为什么?

vue项目中调用接口时,通过浏览器调试Reasponse Headers中存在一个tokon数据,但在拦截器中打印不存在,是为什么?

实例说明:

最近负责一个项目,后端通过接口在Reasponse Headers里传了一个tokon数据

我通过 axios 调用,然后有原框架做了拦截数据格式化,我在响应拦截部分打印response

但是返回对象中heards部分为{}

这是为什么?

有没有大佬知道怎么获取到heards吗?浏览器调试上的Reasponse Headers是有的。


回答:

先直接去拦截器里面打印 响应内容。比如说这个位置:

// Axios 响应拦截器

service.interceptors.response.use(res => {

console.log('interceptors.response', res, {...res.headers} )

...

}

看看 header 里面的内容是不是在,如果能打印出来的话。就是代表格式化的时候把头处理掉了。
另外确定一下是否看错了把 Request Headers 里面的内容看成响应内容了。不过直接打印出来是 {} 确实有问题。


回答:

Access-Control-Expose-Headers 需要配置一下,不然好像只有 ie 能拿到

https://developer.mozilla.org...

vue项目中调用接口时,获取Reasponse Headers中Headers值,打印不存在,是为什么?

以上是 vue项目中调用接口时,获取Reasponse Headers中Headers值,打印不存在,是为什么? 的全部内容, 来源链接: utcz.com/p/933189.html

回到顶部