我有基于 cookie 的身份验证和会话管理的 Spring Boot 应用程序。对于第一个请求,我收到 cookie 名称和会话哈希作为值。
另一方面,我有用 Expo 包装的 React Native 应用程序。对于有史以来的第一个请求,我可以从 fetch() 请求中获取这个“set-cookie”标头。然后,即使在重新启动应用程序后,我也无法获得此标头。
我用 React Native Debugger 和这行代码调试了它:
GLOBAL.XMLHttpRequest = GLOBAL.originalXMLHttpRequest || GLOBAL.XMLHttpRequest;
Run Code Online (Sandbox Code Playgroud)
我可以在调试器的网络选项卡上看到我的 XHR 请求。清除所有 cookie 后,每次我在请求的预览中正确接收 set-cookie 标头时。但是我用 fetch(...).then(response => response.headers) 看不到它。
为什么?这是我的饼干持久化的东西吗?如何在没有插件/库的情况下处理 cookie 数据并将其保存到 AsyncStorage?