struts2和前端通过json交互时数据解析问题

来源:互联网 发布:java环境变量设置win7 编辑:程序博客网 时间:2024/06/05 05:16

今天在前端通过angular的$http向后台传值的时候, 发现后台无法获取到值, 仔细检查后发现浏览器发送的

是request payload, 查阅大量博客之后才发现是因为struts的后台没有办法解析application/json的数据, 所

以应该在$http中设置:

headers: { 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'}
将提交数据转换成form表单提交的默认格式, 而不是json的格式(如果使用servlet的话就可以解析, 但是struts不支持)

提交的json 数据也应该转成key=value&key=value 这样标准的表单提交格式, 这样只需要在action 中添加同名属性

和get/set 方法, 就能自动给属性赋值了


附记:

如果不想在前端转格式的话, 可以直接传json 数据到后台, 通过request.getParameterMap().entrySet().iterator().next().getKey()

获取json 的字符串


原创粉丝点击