AngularJS:通过$resource使用数组类型参数发送请求(复选框,多选
发布时间:2020-12-17 17:12:36 所属栏目:安全 来源:网络整理
导读:当我的GET参数中有一个复选框(client_status)数组时,我在使用AngularJS中的$resource库发送正确序列化的GET请求时遇到问题. 这是我现在在控制器中的代码: $scope.filters = { client_status: ["CLIENT_STATUS_FORMER","CLIENT_STATUS_ACTIVE"],client_refer
当我的GET参数中有一个复选框(client_status)数组时,我在使用AngularJS中的$resource库发送正确序列化的GET请求时遇到问题.
这是我现在在控制器中的代码: $scope.filters = { client_status: ["CLIENT_STATUS_FORMER","CLIENT_STATUS_ACTIVE"],client_reference: "e" } $scope.records = Client.get($scope.filters,function(data){ ... } 以上将发送以下GET请求: f.json?client_reference=e&client_status=CLIENT_STATUS_FORMER,CLIENT_STATUS_ACTIVE 但是,根据我的理解,上面看起来似乎不是正确的格式.有人可以指导我一点吗?以下是我的期望: f.json?client_reference=e&client_status%5B%5D=CLIENT_STATUS_ACTIVE&client_status%5B%5D=CLIENT_STATUS_FORMER 非常感谢您的帮助. 托马斯 解决方法
您可以使用$resource完成此操作,方法是将client_status更改为’client_status []’,如下所示:
$scope.filters = { 'client_status[]': ["CLIENT_STATUS_FORMER",client_reference: "e" } 我为此创建了一个plunker:http://plnkr.co/edit/QXIaY8XlMUfOy7RNMKKv?p=info 我在那里放了一个虚拟URL,所以如果你在运行plunker时使用Firebug或Chrome开发工具,你会看到http://example.com/api的请求显示正确添加了[]到GET请求中. 在这个问题的答案中注意到类似的解决方案: (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |