[问题]POST提交对象到后台如何转换?
1.表单提交
<form action="/index.html" type="POST">
<input name="user.name"/>
<input name="user.pass"/>
</form>
例如我填写user.name=‘test’,user.pass=‘test’,后台只写一句
console.log(req.postparam);
打印结果会是{'user.name':'test','user.pass':'test'}
2.如果是用ajax-post提交
$.ajax({
url:'/index.html',
data:{
user:{
name:'test',
pass:'test'
}
}
});
打印结果也是一样的{'user.name':'test','user.pass':'test'}
求教如上
9 回复
juqery发送对象时的坑,rrestjs框架目前解析不了这种格式,我努力填坑中~
我希望表单的post提交也能像java一样按照对象的方式来解决
html表单的命名可以用数组形式
表单:
<form action="/index.html" type="POST">
<input name="user[name]"/>
<input name="user[pass]"/>
</form>
ajax:
$.ajax({
type: "POST",
data: $("form").serialize()
});
console.log(request.body):
{
"user": {
"name": "admin",
"pass": "admin"
}
}
今天上午更新了rrestjs v0.9.1,已经把这个问题解决了
神马情况啊?木有看懂。。。
@leizongmin 没什么大问题就是对post上来的数据有一种数据格式rrestjs框架以前没有正确解析,现在修复了
java中就是写user.name,user.pass,传递到后台就有了user对象和他的属性name、pass,如何不按照[]写法而按照.的写法也能正常解析,@snoopy吴哥这个做了吗?
@a272121742 2种情况都必须支持啊,正常key=val也是可以的,混搭也行
@snoopy good