Javascript 获取在Node/Express中传递不同数据的相同URL的方法

Javascript 获取在Node/Express中传递不同数据的相同URL的方法,javascript,node.js,rest,express,web,Javascript,Node.js,Rest,Express,Web,所以,我试图在不同的场景中为同一个URL获取不同的数据。这是我的密码 第一种情况: app.get('/upload', function(req, res) { res.render('upload', {data: 'a'}); }); res.redirect('/upload'); app.get('/upload', function(req, res) { res.render('upload', {data: 'b'}); }); 第二种情况: app.get(

所以,我试图在不同的场景中为同一个URL获取不同的数据。这是我的密码

第一种情况:

app.get('/upload', function(req, res) {
    res.render('upload', {data: 'a'});
});
res.redirect('/upload');
app.get('/upload', function(req, res) {
    res.render('upload', {data: 'b'});
});
第二种情况:

app.get('/upload', function(req, res) {
    res.render('upload', {data: 'a'});
});
res.redirect('/upload');
app.get('/upload', function(req, res) {
    res.render('upload', {data: 'b'});
});

然而,由于某些原因,它总是执行第一个场景,只传递数据:“a”。如何根据具体情况对每个get方法进行优先级排序?

首先,不能对两个不同的作业使用相同的字符串名称

您可以使用params或query来实现这一点。我为您创建了一个带有params的示例。您可以根据您的场景更改开关箱

Params


第一个场景和第二个场景的区别是什么?什么情况?你怎么能检查呢?@hurricane 1st scenario正是我们想要访问特定页面的时候。第二种情况基本上是在我提交表单后,我想重定向到同一页面,但内容不同。我试图通过传递数据来访问不同的内容。你所说的“两个不同作业的相同字符串名”是什么意思?