gpt4 book ai didi

AngularJS:数组表示法中的 POST 参数

转载 作者:太空宇宙 更新时间:2023-11-04 02:28:37 25 4
gpt4 key购买 nike

我的 angular.js 应用程序将以下 JSON 发布到我的后端 API:

{"pickupAddress":
{"state":"d","country":"d","city":"d","zipCode":"d","street":"d"},
...}`

相反,我的后端 API 需要接收 not pickupAddress.state ,但是pickupAddress[state] .

我尝试更改 ng-model在我看来(到 myObject.pickupAddress['country'] )但这会产生一些奇怪的错误。

我想要一些导致这个结果的东西(使用原始html):

<input type="text" name="pickupAddress[state]" />

最佳答案

如果您提供对象源,Angular 序列化 POST 数据的方式实际上不使用您的服务期望的表示法。如果您使用 jQuery $.param 方法将对象序列化为 param-string 并发布此字符串,它应该可以工作:

var data = $.param({
"pickupAddress": {
"state": "d",
"country": "d",
"city": "d",
"zipCode": "d",
"street": "d"
}
});

$http.post('test', data, {
headers: {'Content-Type': 'application/x-www-form-urlencoded'}
});

以上将发布数据为

pickupAddress[state]:d
pickupAddress[country]:d
pickupAddress[city]:d
pickupAddress[zipCode]:d
pickupAddress[street]:d

检查这个discussion在 Angular 问题页面中。

关于AngularJS:数组表示法中的 POST 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28701876/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com