Haiger412666
Haiger412666
  • 发布:2020-06-27 13:14
  • 更新:2022-10-14 17:15
  • 阅读:3802

uni.request获取不到http响应头

分类:uni-app

我新建uniapp工程,没有运行在app,而是用浏览器运行。但我没有调用任何移动端的API,只是简单的用了uni.request请求后台的一个http接口。通过浏览器查看,我自定义的请求头Login-Token已经返回了。可是我在success回调函数中的header拿不到该响应头。打印res.header之后。我也惊呆了。请问如何获取到自定义的响应头?

2020-06-27 13:14 负责人:无 分享
已邀请:
1***@163.com

1***@163.com

请问解决了吗

e***@doersoft.com
9***@qq.com

9***@qq.com

同样得问题,在微信小程序得成功回调res里面可以拿到后端返得数据,但是在网页h5,uni.request得成功回调就拿不到数据了

Ramsey

Ramsey

请问解决了吗

  • Haiger412666 (作者)

    不好意思。没解决!我换别的方式了。


    2021-06-29 21:58

1***@qq.com

1***@qq.com

啪!https://blog.csdn.net/zhuchunyan_aijia/article/details/87813581

  • Haiger412666 (作者)

    拿不拿自定义响应头,那都是后事。

    现在的情况是uniapp这个框架,自行把大部分的header都给过滤掉了。


    2021-07-20 00:38

  • 1***@qq.com

    回复 Haiger412666: 你确定不能用?我后端放行了自定义header之后app端就能拿到了,确定不是同一个问题?


    2021-07-20 14:16

  • Haiger412666 (作者)

    回复 1***@qq.com: 只有一种可能,uni框架针对H5、小程序、app不同平台的返回结果进行了不同程度的转换或处理导致的差异。


    2021-07-24 16:50

前端JASON

前端JASON - 接单uniapp项目&插件/联系front_jason/主页daxiong.site

前后端规定的交互方式有问题,一般登录接口调用成功之后,后端直接在data中返回token给你,然后前端进行本地存储。报文中的返回信息要根据后端定义的返回

  • Haiger412666 (作者)

    交互方式本来就没有标准。没有说谁家好用,谁家的规范就一定要遵守。

    而且这是一个,客户端调用服务端拿不到响应头的问题,和前后台交互逻辑没半毛钱关系。我拿响应头,不一定是为了拿自定义响应头,也不一定为了前后台交互。

    现在的情况是uniapp这个框架,自行把大部分的header都给过滤掉了。明白?


    2021-07-20 00:37

  • Ramsey

    回复 Haiger412666: 确实拿不到 搞不懂为啥只过滤成两三个 很多逻辑要在响应头才好处理


    2021-07-22 11:28

2***@qq.com

2***@qq.com

在 uniapp 的 uni.request 文档中提到——根据 W3C 规范,H5 端无法获取 response header 中 Set-Cookie、Set-Cookie2 这2个字段,对于跨域请求,允许获取的 response header 字段只限于“simple response header”和“Access-Control-Expose-Headers”,如果需要获取自定义的响应头,只需要在后端接口的响应头上配置“Access-Control-Expose-Headers”即可。

要回复问题请先登录注册