由app.post触发的Express res.render [英] Express res.render triggered by app.post
问题描述
在表达应用程序生成器创建的存根中,我创建了一个名为test
.
Within the stub created by express application generator, I've created a new view called test
.
我无法使用以下方式调用test
:
I am unable to invoke test
using:
app.post('/test', function(req, res, next) {
res.render('test');
});
这似乎令人惊讶,因为下面的app.get
正在按预期方式呈现:
It seems surprising, because app.get
below is getting rendered as expected:
app.get('/test', function(req, res, next) {
res.render('test');
});
我进一步尝试了以下方法,但仍无法呈现该页面:
I have further tried the following, but it is still not rendering the page:
app.post('/test', function(req, res, next) {
console.log('within app.post'); // this is getting logged
res.redirect('/test');
});
请帮助.如何从post方法渲染test
?
Please help. How can I render test
from a post method ?
推荐答案
因此javascript代码可能存在问题.我将下面的代码添加到路由文件夹中的文件index.js中,并且模板正在呈现:
So probably there is problem with javascript code. I am add code below to file index.js in routes folder, and template is rendering:
router.get('/test', function(req, res, next) {
res.render('index', {title: 'GET test'});
});
router.post('/test', function(req, res, next) {
res.render('index', {title: 'POST test'});
});
尝试通过curl发送请求:
Try to send request via curl:
curl -v -XPOST http://localhost:3000/test
或使用chrome或firefox扩展程序进行请求.
Or use chrome or firefox extension to make request.
这篇关于由app.post触发的Express res.render的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!