将POST请求重定向到快递中的PUT

时间:2017-09-10 11:20:01

标签: node.js api express redirect http-redirect

背景:我已经用express编写了一个REST API,它扩展并修改了我用Python编写的旧API。旧的API不是非常RESTful:所有"修改/插入/删除"请求是通过POST完成的,查询结构与新API略有不同。

简而言之,我想在我的新API上编写一些中间件,以旧API的形式重定向请求,以便它们由新API的路由处理。中间件需要是自包含的,即我不希望任何单独的路由处理重定向逻辑。

这显然需要重定向请求。我知道我可以使用redirect方法执行此操作,如(轻微伪代码):

app.use('/', (req, res, next) => {
  if (requestIsOld(req)) {
    return res.redirect(newRoute(req));
  }

  return next();
});

我知道我可以要求客户使用相同的方法发出新请求,其中包含:

res.redirect(307, newRoute);

但是,这导致POST请求修改/删除新API上的POST请求的数据,这些请求仅由" add"处理。请求处理程序。

如何重定向POST请求并请求将方法更改为例如PUT或DELETE

0 个答案:

没有答案