在 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(或者別的需要信息)。
