reactjs - 我可以在 REST API 和 RectJS 中使用会话对象和会话 ID 进行身份验证吗?
问题描述
我们希望将现有的 Web 应用程序(基于 HTTP API)迁移到使用 ReactJS for UI 的 REST 服务模型。我们在当前应用程序中大量使用了 Session 对象(用于保存数据和进程)。是否可以使用相同的 Session 对象来保存数据和 Session ID 以进行 REST API + ReactJS 的身份验证过程?
解决方案
是的,没有。
基于随每个浏览器请求发送的 cookie 为特定 HTTP 客户端(例如,您的 Web 浏览器)保留一个会话。该浏览器请求是针对 HTML 网页(您当前的 Web 应用程序)还是针对返回 JSON(例如 API)的 URL 并不重要。因此,您可以重构应用程序前端的某些部分以使用相同的基于会话的身份验证(假设您的会话 cookie 允许的域和路径等内容)。
因此,重构后的前端可以简单地进行 HTTP 调用来检索数据,而后端可以使用存储在服务器会话中的数据进行相应的响应。
这确实意味着您需要仔细考虑 API 中的资源抽象,因为您不能简单地在 JavaScript 中访问服务器会话数据。
随着时间的推移,您可能会发现您想要重构您的身份验证/会话层,使其远离带有 cookie 的会话,并在本地存储中查看带有 JWT 的适当 IDS,但这远远超出了“我可以这样做”的范围。
推荐阅读
- ruby-on-rails - 如何将同一联赛中的用户设置为变量?
- java - 从实体中的属性文件中读取
- android - ACTION_MOVE 上的叠加布局(类似信使的聊天气泡)退出布局
- asp.net - 刷新 LightSpeed 零售 API 中的访问令牌
- vba - 将从特定列开始的最后一行导入集中工作表
- bluetooth - BLE 传感器配对并获取数据
- ruby-on-rails - rails 在多对多关联中保存嵌套属性
- java - HTTP 状态 500 – 内部服务器错误-JSP-Tomcat 服务器
- apache-camel - 如何停止骆驼doWhile循环
- c++ - 是否可以将 TCP 数据包发送到仅 UDP 的服务器?