gpt4 book ai didi

node.js - 使用Node.JS中 'querystring.parse'内置模块的方法读取/解析参数

转载 作者:搜寻专家 更新时间:2023-11-01 00:15:34 25 4
gpt4 key购买 nike

场景:考虑以下代码:

var querystring = require('querystring');
var ParamsWithValue = querystring.parse(req._url.query);

然后我就可以阅读任何 query string的值(value)。
例如:如果请求的字符串是 http://www.website.com/Service.aspx?UID=Trans001&FacebookID=ae67ea324
我可以分别使用代码 ParamsWithValue.UIDParamsWithValue.FacebookID 获取查询字符串的值。

问题:我能够获取以上述相同方式传递的任意数量参数的值。但是从第二次开始,我在浏览器中收到以下响应错误。

错误:

{"code":"InternalError","message":"Cannot read property 'query' of undefined"}

问题:从 URL 读取查询字符串的方法有什么问题。

注意:我不想使用任何框架来解析它。我试图仅依赖内置模块。


更新:当任何参数的值改变时,它会正确响应。但是,如果从不同的浏览器再次请求相同的值,则会抛出相同的错误。

最佳答案

  1. 我认为您需要 req.url 而不是 req._url。

  2. req.url 是一个字符串,如果你想要一个 URI 实例使用 require('url').parse(req.url)

  3. 所以,您最终应该:

    var ParamsWithValue = querystring.parse(require('url').parse(req.url).query);

编辑:我更正了第 1 点中的一个错字,最后一个 req.url -> req._url

关于node.js - 使用Node.JS中 'querystring.parse'内置模块的方法读取/解析参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15896609/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com