Express js - 无法重定向

Chi*_*hin 10 node.js express

我正在尝试执行以下操作:

来自客户

var req =  jQuery.post(
  "http://www.example.com:3000"+"/dologin", 
  {"username" : username, "password" : password}).error(function(){
    alert("an error occurred");
  });
Run Code Online (Sandbox Code Playgroud)

在快速根

app.post('/dologin',function(req, res) {
  res.redirect('http://bbc.co.uk');
});
Run Code Online (Sandbox Code Playgroud)

结果传回来了

<p>Moved Temporarily. Redirecting to <a href="http://bbc.co.uk">http://bbc.co.uk</a></p>
Run Code Online (Sandbox Code Playgroud)

似乎如果我从jquery发帖,重定向将无效.有没有人知道强制它重定向的方法?

Tee*_*nen 19

浏览器不会在ajax响应的重定向上重定向窗口.使用javascript重定向浏览器.

例如,在服务器中将新站点作为内容发送.

res.contentType('application/json');
var data = JSON.stringify('http://site.example.com/')
res.header('Content-Length', data.length);
res.end(data);
Run Code Online (Sandbox Code Playgroud)

在客户端

var req =  jQuery.post(
   "http://www.mysite.com:3000"+"/dologin", 
    {"username" : username, "password" : password}, 'json').error(function(){
       alert("an error occurred");
    }).success(function(data) {
       window.location = data;
    });
Run Code Online (Sandbox Code Playgroud)


ale*_*lex 15

在开发应用程序时,我实际上遇到了同样的事情.如果方法发布,Express似乎不会重定向.

尝试:

app.post('/dologin',function(req, res) {
  req.method = 'get'; 
  res.redirect('http://bbc.co.uk'); 
});
Run Code Online (Sandbox Code Playgroud)