【问题标题】:Retrieve query string parameters in node.js在 node.js 中检索查询字符串参数
【发布时间】:2016-02-05 22:33:09
【问题描述】:

我正在尝试从 URL 检索查询字符串参数。我正在使用 node.js restify 模块。

网址如下所示;

http://127.0.0.1:7779/echo?UID=Trans001&FacebookID=ae67ea324&GetDetailType=FULL

提取的相关代码;

server.use(restify.bodyParser());

server.listen(7779, function () {
    console.log('%s listening at %s', server.name, server.url);
});

server.get('/echo/:message', function (req, res, next) {
    console.log("req.params.UID:" + req.params.UID);
    console.log("req.params.FacebookID:" + req.params.FacebookID);
    console.log("req.params.GetDetailType" + req.params.GetDetailType);

    var customers = [
        {name: 'Felix Jones', gender: 'M'},
        {name: 'Sam Wilson', gender: 'M'},
    ];
    res.send(200, customers);

    return next();
});

如何修改代码以使req.params.UID 和其他参数可以从URL http://127.0.0.1:7779/echo?UID=Trans001&FacebookID=ae67ea324&GetDetailType=FULL 中检索到?

【问题讨论】:

    标签: javascript node.js url-parameters restify


    【解决方案1】:

    使用req.query而不是req.params。你可以阅读它here

    server.use(restify.bodyParser());
    server.use(restify.queryParser());
    
    server.listen(7779, function () {
        console.log('%s listening at %s', server.name, server.url);
    });
    
    server.get('/echo', function (req, res, next) {
        console.log("req.query.UID:" + req.query.UID);
        console.log("req.query.FacebookID:" + req.query.FacebookID);
        console.log("req.query.GetDetailType" + req.query.GetDetailType);
    
        var customers = [
            {name: 'Felix Jones', gender: 'M'},
            {name: 'Sam Wilson', gender: 'M'},
        ];
        res.send(200, customers);
    
        return next();
    });
    

    【讨论】:

    • 赞成。答案几乎是正确的。如果 URL 为 127.0.0.1:7779/echo/… 则有效 当 URL 为 127.0.0.1:7779/… 时无效 请注意 URL 的 echo 部分的细微差别。
    • 我编辑了您答案的一小部分,使其完全正确。请接受编辑。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多