0

我在模拟服务器中有这样的路由: http://localhost:1337/mock-store/admin/store-parameters/1 返回一个 json:

{
  "id": 1,
  "code": "123",
  "redirect": true
}

我希望如果 json 包含“redirect = true”,该路由会将我重定向到不同的链接。

我正在尝试在我的 yotpo-mock 服务器中使用 middleware.js,例如:

module.exports = (req, res, next) => {
  req.header('X-Hello', 'Goodbye');
  res.header('X-Hello', 'World');
  next("www.google.com)
}

但 json 响应只是更改为“google.com”。我希望我的路线被重定向到 google.com。

帮助?

4

1 回答 1

1

您可以使用res.redirect. 但是为了重定向到一个完全不同的网站,您必须提供一个完全合格的 url(带有协议和所有内容)

res.redirect('http://google.com');

尝试了这个 POC,它可以工作:

const app = require('express')();
app.use((req,res,next)=>{
    res.redirect('https://google.com');
})
app.get('/', (req,res)=>{
    res.send('Hello');
})
app.listen(8089, ()=>{
    console.log('Running server');
})

参考这里:https ://expressjs.com/en/api.html#res.redirect

于 2018-08-08T15:35:55.020 回答