简体   繁体   English

req.query 什么都不返回

[英]req.query returns nothing

Trying to get variable from http://localhost:3000/categories/subcategories?category_id=13 but req.query returns empty result.试图从 http://localhost:3000/categories/subcategories?category_id=13 获取变量,但 req.query 返回空结果。

app.get('/subcategories', (req, res) => {
 let category_id = req.query.category_id
 console.log(req.query)
 db.query('SELECT subcategory_name FROM subcategories WHERE category_id=(?)',
 [category_id],
 (err, result) =>{
   res.send({category_id})
 });
})

Is this possibly a problem with the way I've set up my server?这可能是我设置服务器的方式有问题吗?

See how you are passing the data, directly entering the data or from another URL you are passing the data.看你是怎么传数据的,直接输入数据还是从另一个URL你传数据。 Ensuring you are not sending data via req.body.确保您没有通过 req.body 发送数据。 Ref:参考:

Empty req.query on ExpressJS ExpressJS 上的空 req.query

or check res.send({category_id}).或检查 res.send({category_id})。 Try printing res.send({"category_id": category_id}).尝试打印 res.send({"category_id": category_id})。 or see console.log(JSON.stringify(req.query))或查看 console.log(JSON.stringify(req.query))

Or Extract Query Parameters Without Express或不使用 Express 提取查询参数

const url = require('url');
const querystring = require('querystring');

let rawUrl = 'https://stackabuse.com/?page=2&limit=3';

let parsedUrl = url.parse(rawUrl);
let parsedQs = querystring.parse(parsedUrl.query);

https://stackabuse.com/get-query-strings-and-parameters-in-express-js/ https://stackabuse.com/get-query-strings-and-parameters-in-express-js/

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM