我正在使用 React Native fetch()
以针对使用 session cookie 的 REST API 进行身份验证。
登录时收到的 session cookie 会随每个请求自动发回,这工作正常。
但是,如果我登录然后退出应用程序,再次启动应用程序时, session cookie 似乎已经丢失。
如何保留登录 cookie,使其在应用程序卸载后仍然存在?
最佳答案
有几个基于 cookie 的 react-native 组件。其中一项可能对您有所帮助。
- https://github.com/joeferraro/react-native-cookies
- https://github.com/shimohq/react-native-cookie
- https://github.com/beefe/react-native-cookiemanager
我听说过一些使用 webview 来持久化基于 cookie 的身份验证的解决方案。但如果可以的话,我建议研究一种无状态的身份验证持久化方法,例如 JWT。然后,您可以将 key 缓存在本地存储中。
最后,最简单的方法可能是您自己将 cookie 的 session 变量缓存到本地存储中,然后在每次请求时手动将 cookie header 注入(inject)到您的 fetch() 请求中。
关于http - React Native fetch() 丢失 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46514382/