node.js - 多次/循环请求 REST API 时处理连接丢失(客户端)

标签 node.js rest client-side api-design

我正在开展一个项目,我正在创建一个全栈网络应用程序来处理设备审核。我使用 SPA 框架作为前端,使用带有 Nodejs 的 Express 服务器作为后端(REST API)。

在应用程序本身中,我使用 session 来记录带有一堆预定义问题(历史功能)的问题的答案。在这里,审核可以有多个 session 。一个 session 可以有多个针对预定义问题的答案(与上一个 session 相同)。 因此,每次用户打开审核时,都会生成一个新 session ,其中复制前一个 session 的所有答案。创建 session 时,许多小请求会循环发送到客户端上的服务器(必须是原子的)。

我的问题是,在循环(客户端)中向 API 发送许多小请求时处理连接丢失的好做法是什么?因为如果在 session 创建过程中客户端到服务器的连接被中止,就会产生不一致的数据。我该如何处理这个问题以避免不一致?

一个想法是,将业务逻辑应用于相关请求( session 端点),我在其中使用服务器内部的项目创建 session 。但众所周知,在 REST API 中实现业务逻辑并不是一个好的做法。

与此事实类似,您可以以订单项和订单为例

有人可以帮我解决这个问题或者有其他想法吗?

最佳答案

似乎您正在尝试将 session 用作 REST API 的一部分这违背了 RESTful(服务器功能应该是无状态的)。您可以使用 JWT并使客户端负责提供与其 session 关联的数据(如果数据足够小)。

关于node.js - 多次/循环请求 REST API 时处理连接丢失(客户端),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57372583/

相关文章:

node.js - 使用 node.js 生成 PNG 图像

javascript - 如何在 Node.js 中解析 "Cannot read property of undefined"

c# - 如何仅在 MVC3 应用程序中选择某个元素时创建新的下拉列表?

c# - Javascript QueryString 到 c#

javascript - 从客户端发出 Instagram API 请求安全吗?

javascript - 将响应 Request.post token 保存在变量中

node.js - 在 SDK v2 上使用 Alexa 和 Lambda 进行 HTTP 请求,如何使其工作?

c# - 具有不同 Controller 但相同操作名称的路由无法生成所需的 url

rest - 无法为 Apache CXF 和 JAX-RS 配置 SSL

http - 如何在 REST 请求中应用 PUT 动词?