You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Node.js+Express中如何获取GET请求的URL参数?

解决Express GET请求中获取URL查询参数的问题

哥们,你这里搞混了GET和POST请求参数的获取逻辑啦!我来给你捋清楚:

  • 首先,你用的bodyParser中间件是用来解析POST/PUT等请求的请求体数据的,而GET请求的参数是附在URL的查询字符串(就是?后面的部分)里的,所以bodyParser根本不会处理这些数据,这就是为什么console.log(req.body)输出空对象{}的原因。

  • 在Express的GET路由中,查询参数是自动解析到req.query对象里的,你要获取symbol=FB这个参数,直接访问req.query.symbol就可以了!

举个具体的代码例子:

const express = require('express');
const app = express();

// bodyParser是处理POST请求用的,GET请求不需要它来拿参数
const bodyParser = require('body-parser');
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());

app.get('/stmd', (req, res) => {
  // 直接从req.query里取symbol参数
  const symbol = req.query.symbol;
  console.log('获取到的symbol:', symbol); // 输出FB
  // 这里可以写你的业务逻辑
  res.send(`Symbol is: ${symbol}`);
});

app.listen(3000, () => {
  console.log('服务器运行在http://localhost:3000');
});

另外,你之前尝试JSON.parse(req)是完全错误的,因为req是Express的请求对象,不是JSON格式的字符串,所以肯定会解析失败,以后别这么干啦😉

内容的提问来源于stack exchange,提问作者David Sullivan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 08:03:05