uni-app 获取 cookie 问题
在 PC 端的时候,对于后端返回的 cookie 我们是不用进行处理的。
浏览器会自动读取 response header 中的 set-cookie 信息保存,并在后续的 request 中带上。
但是在做小程序时,由于不能自动解析、带上 cookie 所以需要自己手动处理 cookie。
在使用 uni-app 时,uni.request 的 success 返回的参数有下面两个可以读取 cookie。
一、header
header 中能够读取到 ‘Set-Cookie’,的信息。可以直接读取这个值。
response.header['Set-Cookie']
这有个问题,如果服务端一次返回多个 cookie 的话这种方式是不能获取多个的。
二、cookies
cookies 正好可以解决上面的问题。
cookies 是一个数组,就是服务器返回的 cookie 的集合。
所以使用 cookies 更方便。
if (res.cookies && res.cookies.length>0) { res.cookies.map(cookie=>{ // 对 cookie 遍历操作 }) }
三、小程序 cookie 差异
这里主要说微信小程序、钉钉小程序。
1、微信小程序
微信小程序还是比较统一的,在开发者工具、Android、IOS 上面都需要手动获取,在发送请求的时候在 request 的 header 中带上
2、钉钉小程序
钉钉小程序各个端都有差异:
开发者工具:可以自己读取 response 中的 cookie,并在 request 的 header 中带上
Android 端:可以自己读取 response 中的 cookie,并在 request 的 header 中带上
IOS 端:无法读取,并且 response 结构改变(获取不到里面的值),必须在返回的 data 中带回需要的 token(或者别的需要信息)。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?