react native 默認(rèn)會自動持久化并攜帶 cookie, android 和 ios 都是一樣的拣播,android 中會保存到 app_webview/Cookies 文件中, ios 我估計也是這樣的
cookie.png
進(jìn)程殺死收擦、應(yīng)用重啟都不影響 cookie 的攜帶诫尽,因為持久化到了文件中。
但是沒有發(fā)現(xiàn)刪除方法炬守,我們的 app 是以 cookie 來表示登錄用戶的牧嫉,怎么刪除呢?當(dāng)然直接移除 Cookies 文件就行了减途,參考一下 RN android (底層是 okhttp)和 ios 處理 cookie 的源碼看看是怎么存的然后寫一個 Native Module 增加刪除方法就行了酣藻。不過有個哥們已經(jīng)寫了一個了 https://github.com/joeferraro/react-native-cookies 可以直接用。
移除 cookie
import CookieManager from "react-native-cookies";
CookieManager.clearAll((err, res) => {
console.log('cookies cleared!');
console.log(err);
console.log(res);
});