一直不清楚,怎么把形如:[{a:1},{b:2}]的数组传到服务端,保证可以解析。请大家解惑。
构建一个object传
不是直接 json 就可以吗?
用json,或者放在querystring里,服务端解析相应的参数
传递复杂的 json
格式的话,请使用 application/json
的方式传递字符串 [{a:1},{b:2}]
,
简单的数据可以使用 querystring
传递数组,比如传递 id
字段,值为 [1,2,3,4]
;
可以这样 ?id=1&id=2&id=3&id=4
如果是Node.js直接传数组对象。。 其他服务器语言需要传字符串转换啥的 我感觉这就是node.js的优势哒
@yangjaixi @hi363138911 @nullcc @nunnly @nasaplayer 是说{x:[{a:1},{b:2}]}这种形式吗,这种方式传过去,数组变成字符串了(被引号包起来了),解析不了。 x[0].a,点不出来东西
@nunnly fasdfsd
@godlike110 测试一哈
@qujinxiong 看你ContentType设置了…序列化之后就是个字符串,你可以直接传json格式进去,Content-Type : application/json 如果是序列化成字符串,服务器端解析一下就好(JSON.stringify <=> JSON.parse)
要从字符串解析出json你要用JSON.parse()
如果不考虑低版本IE,使用 JSON.stringify 呀,你这个明显格式就不对头… 字符串要是 JSON 字符串
照例自问自答: 如下图传递复杂结构json,服务端获取到的数组可以直接解析 结果如下:
没毛病啊 From Noder
@qujinxiong 不错不错,问问题就是要有始有终,还可以帮助别人,感谢你
关于发送复杂数据的问题,我们需要关注两web端与server端 web端使用jquery.ajax,使用contentType: "application/json; charset=utf-8"请求头,并使用post方式发送。 在server端需要使用app.use(bodyParser.json({limit: ‘1mb’}))来解析 这两条包含了,就可以正常使用req.body来获取了