Node.js 在Express.JS中实现If-Match HTTP头

Node.js 在Express.JS中实现If-Match HTTP头,node.js,express,http,http-headers,Node.js,Express,Http,Http Headers,上下文:我试图防止由于同一数据库实体上的多个用户并发更新而导致的数据覆盖 问题:当数据库已经被另一个用户修改时,如何在POST调用中实现If MatchHTTP头以HTTP状态412(前置条件失败)响应 我的预期方法: 当对POST/user/123进行POST调用时,我想比较If Match中可用的ETagPOST调用头与端点GET/user/123的响应头中存在的ETag。要实现这一点,我必须从POST路由调用GET路由,以提取ETag。这可能吗?您可以使用res.redirect('/ge

上下文:我试图防止由于同一数据库实体上的多个用户并发更新而导致的数据覆盖

问题:当数据库已经被另一个用户修改时,如何在POST调用中实现
If Match
HTTP头以HTTP状态412(前置条件失败)响应

我的预期方法:
当对
POST/user/123
进行POST调用时,我想比较
If Match
中可用的
ETag
POST调用头与端点
GET/user/123
的响应头中存在的
ETag
。要实现这一点,我必须从POST路由调用GET路由,以提取ETag。这可能吗?

您可以使用res.redirect('/getroutename')从POST路由调用GET


通过这种方式,您可以比较从get调用收到的ETag,并实现您的预期方法。

res.redirect不允许我比较节点服务中的ETag。您最终找到了解决方案吗?