node.js - node.js 当不同用户同时发出请求时返回相同的响应
问题描述
我有带有此类代码的 node.js Web 应用程序
import request from 'request';
export const promisedRequest = (options: any): any => {
const deferred = new Promise((resolve: any, reject: any) => {
return request(options, (error: any, response: any, body: any) => {
if (error || !(response.statusCode >= 200 && response.statusCode <= 208)) {
reject({ error: error || response });
} else {
resolve({ response, body });
}
});
});
return deferred;
};
它以这种方式调用
export const getProduct = (token: string, barcode: string): Promise<any> =>
promisedRequest({
url: `${process.env.API_URL}`,
method: 'POST',
json: true,
headers: {
'X-Token': token,
},
body: {
barcode: barcode,
},
})
.then(({ body }: any) => body.data[0])
.catch((error: any): void => {
const errorMessage = `Cannot get product: Product barcode: ${barcode}`;
console.error(errorMessage, error);
throw Error(errorMessage);
});
我检查了浏览器并请求正确发送,但如果我几乎同时(约 2 毫秒)发出请求,我会为两个用户得到相同的响应。请帮我解决一下这个。非常感谢。
解决方案
推荐阅读
- c# - 检测自定义模型绑定中的可用键
- python-3.x - 使用 Python 的分层数据/树数据
- python - 如何从列表中减去符号值并获取对数值
- go - 如何使用 HTML 和 CSS 设置 Go 错误样式?
- dplyr - Hive sql 查询不返回任何结果 + Sparklyr 中的等价物
- reinforcement-learning - 在定制的 OpenAI 健身房环境中传递参数
- javascript - 使用模板提交表单的问题
- regex - 正则表达式匹配两个字符
- python-3.x - 再一次 - 始终从 0.5 向上取整。Python 中的 0.49、0.444449 等
- c++ - 类成员函数在继承的情况下作为模板参数