San*_*ngh 1 html rest node.js express
html包含
form(name="Form", action="/", method="post")
button(type='submit') submit
Run Code Online (Sandbox Code Playgroud)
Express服务器包含:
app.post('/', function(req, res){
res.render('home', {user: req.body});
});
Run Code Online (Sandbox Code Playgroud)
如预期的那样,home.jade它在浏览器中呈现。但是,当我home.jade在http://localhost:3000It 处刷新文件时,要求重新提交确认表单,我想摆脱这个- Confirm Form Resubmission!
该home.jade文件是包含简单文本的简单文件。
问题并不是由您的代码引起的,而是由浏览器在您收到POST的响应后希望再次发布。解决此问题的常用方法是重定向到同一页面。
app.post('/', function(req, res){
res.redirect('/');
});
Run Code Online (Sandbox Code Playgroud)
现在,当您刷新时,浏览器将改为获取GET'/'。
更新以反映更新的问题
要呈现发布在重定向页面上的数据,可以使用会话。
app.use(express.cookieSession());
app.post('/', function(req, res){
req.session.user = req.body;
res.redirect('/');
});
Run Code Online (Sandbox Code Playgroud)
在GET'/'中间件中,您必须确保使用该参数
app.get('/', function(req, res){
res.render('home', { user: req.session.user });
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1395 次 |
| 最近记录: |