快递请求中的多变量

zob*_*225 1 node.js express

我的快递服务器出了问题

app.get('/callback/:nation/:username/?:permalink', function(req, res)
            {
                nationurl = req.params.nation;
                username = req.params.username;
                storypermalink = req.params.permalink;


                console.log("nation: "+nation);
                console.log("username: "+username);
                console.log("permalink: "+permalink);
            });
Run Code Online (Sandbox Code Playgroud)

因为/ ?:它分割了用户名并且没有给出我的固定链接:

nation: poneyclub
username: j
permalink: hondoe
Run Code Online (Sandbox Code Playgroud)

有人有想法吗?

fre*_*ish 6

这是因为?Express路由算法中的特殊字符.有关详细信息,请参阅文档

当您键入URL Express时,将?字符后面的所有内容视为查询.它应该是一种格式

?key1=value1&key2=value2&...&keyX=valueX
Run Code Online (Sandbox Code Playgroud)

它可以使用req.query.

您可以在路由中使用自己的正则表达式更改此默认行为(有关详细信息,请再次参阅文档).