4

我打电话给我的应用程序localhost:3000?paramname=12345

在NodeJS里面我有

服务器.js

var http = require('http');
var app = require('./app');

var server = http.createServer(app.handleRequest).listen(3000, function ()  {
    console.log('Server running on Port 3000');
});

和我的 app.js

var url = require('url');
var path = require('path');

function handleRequest(req, res) {
    // parse url and extract URL path
    var pathname = url.parse(req.url).pathname;  

    // file extention from url
    const ext = path.extname(pathname); 

    console.log(req.url); 

});

现在console.log(req.url)会输出我/?paramname=12345

但我怎么才能只得到 var-nameparamname或它的值12345

当我尝试我找到的所有东西时,我只能得到undefined或脚本刹车,因为没有这样的功能。

4

2 回答 2

6

您可以使用内置querystring模块:

const querystring = require('querystring');

...
const parsed = url.parse(req.url);
const query  = querystring.parse(parsed.query);
于 2018-12-03T15:32:25.067 回答
1

您可以使用 'url' 模块在纯 Nodejs(没有 express)中获取查询参数下面是一些代码片段 - 代码片段

请求路径

于 2020-12-27T15:09:47.777 回答