Node.js Nodejs:url.parse查询中存在数组问题
返回:Node.js Nodejs:url.parse查询中存在数组问题,node.js,query-string,Node.js,Query String,返回: http://domain.com/action?params[]=1¶ms[]=2¶ms[]=3 params[]作为名称而不是params 在PHP之后,这有点令人惊讶 jQuery序列化正在参数上添加[] 你们是为此写了一个助手,还是我只是做错了?这对我来说似乎是意料之中的行为;如果querystring解析器删除了部分名称,我会更惊讶。也就是说,该模块所做的正是我所期望的解析器所做的,该解析器只需将名称/值对按“&”拆分,将名称/值按“=”拆分,
http://domain.com/action?params[]=1¶ms[]=2¶ms[]=3
params[]作为名称而不是params
在PHP之后,这有点令人惊讶
jQuery序列化正在参数上添加[]
你们是为此写了一个助手,还是我只是做错了?这对我来说似乎是意料之中的行为;如果querystring解析器删除了部分名称,我会更惊讶。也就是说,该模块所做的正是我所期望的解析器所做的,该解析器只需将名称/值对按“&”拆分,将名称/值按“=”拆分,并使用特殊字符进行unescape var qs=要求“查询字符串”; qs.parse'params=1¶ms=2¶ms=3';//名称应为params //=>{'params':['1','2','3']} qs.parse'params[]=1¶ms[]=2¶ms[]=3';//名称应为params[] //=>{'params[]':['1','2','3']}
此模块根据需要执行解析: 如果这不起作用,对于复杂阵列还有另一种方法: 两者都可以在这里找到:
Mate我正在使用jQuery,它采用了参数序列化。它正在发送此params[]=1¶ms[]=2¶ms[]=3类型的查询。我已找到此类型的模块。问题已结束有一点值得注意的是,如果使用params=1只传递一个参数,它将不会被解析为数组。默认Node.js决定不为具有多个值的params实现该功能,但TJ的模块解决了这一问题。我猜Ry不应该为此类杂项问题而烦恼。是的,也许可以将其从核心中删除并放入单独的模块中。
query: { 'params[]': [ '1', '2', '3' ] }