angularJS $http如何传递复杂参数

简单参数可以通过GET方法中的URL参数名值对传递。那么对复杂的参数(对象)如何传递?

  1. 建议使用POST方法。
  2. 将对象赋值给一个parameter。
$http({
                method:'post',
                url:'./tester?dummy',
                params: {myParam:{ne:vm.neList[0],
                ne1:vm.neList[2],
                ne2:vm.neList[3],
                ne3:vm.neList[1],
                ne5:vm.neList[5],
                ne6:vm.neList[6],
                ne7:vm.neList[7],
                ne8:vm.neList[8],
                ne9:vm.neList[9],
                ne10:vm.neList[10]
                ,ne11:vm.neList[11]
                ,ne12:vm.neList[12]
                ,ne13:vm.neList[10]
                ,ne14:vm.neList[10]
                ,ne15:vm.neList[10]
                ,ne16:vm.neList[10]
                ,ne17:vm.neList[10]
                ,ne18:vm.neList[10]
                ,ne19:vm.neList[10]}}
            })

只管给myParam赋值就是,angular会自动将myParam的值(json数据)转换成合法的字符串(符合URI的字符要求),赋给myParam,通过POST命令发送出去。

  1. 服务端(以java HttpServletRequest为例),直接提取:

得到一个String,使用json工具按照约定的定义反序列化成对象即可。

  1. 数据太大怎么办?请参考我的另一篇
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容