问题描述
刚开始学express,有一个登录页,如果验证失败显示“用户名或密码错误,请重新登录!”,然后几秒后页面重定向到登录页,但是没有效果:
var express = require(’express’);var router = express.Router();router.post(’/’, function(req, res){ var username = req.body.user; var password = req.body.password; if(username === ’liaoyf’ && password === ’123’){res.send(’Welcome!’ + username); }else{res.send(’用户名或密码错误!请<a href='https://www.6hehe.com/'>重新登录</a>’);//这边我想重定向到登录页(登录页路径为/)setTimeout(function(){ res.redirect(’/’);}, 2000); }});module.exports = router;
网上看send好像直接相应完成了,后面不会触发,那到底应该怎么处理才好?
问题解答
回答1:res.set(’refresh’, ’5;url=http://example.com/’);
或者在 HTML 中加入
<meta http-equiv='refresh' content='5;url=http://example.com/' />回答2:
前面那个提示错误可以用res.write(),这个不会像send()、end()结束响应的。