1

我已经完成了以下实施

app.post('/k/v4/monitor/start', function (req, res) {
      Monitor.start(data, function (err) {
            res.end('Monitor Started');
      });
});

app.post('/k/v4/monitor/stop', function (req, res) {
      Monitor.start(data, function (err) {
            res.end('Monitor Stopped');
      });
});

现在的要求是我需要支持几个旧版本(1 到 3)并重定向到版本 4。这意味着 /k/v1/monitor/ 、 /k/v2/monitor/、 /k/v3/monitor/* 所有网址都应该被重定向到 /k/v4/monitor/*。

如何处理这种快递路由的情况?实现这一目标的最佳方法是什么?如果有人可以为我提供一个例子,那就太好了。

4

1 回答 1

0

我猜你可以使用 HTTP 重定向:

app.post('/k/v1/monitor/start', function(req, res) {
    res.writeHeader(301, { 'Location' : '/k/v4/monitor/start'});
    res.end();
})

但据我了解,问题在于 POST 请求在重定向时更改为 GET。所以我不知道你是否可以使用这个解决方案。或者,也许您根本不需要使用 HTTP POST,您可以只使用 HTTP GET(这意味着对所有相关 URL 使用 app.get 而不是 app.post)...。

于 2013-08-16T13:10:54.383 回答