如何将键分配给要传递给 API 的值数组

How can I assign a key to an array of values to pass to an API?

本文关键字:API 数组 分配      更新时间:2023-09-26

Im 使用 Angular 和纯 JS。我有一个这样的数组:

arr = [1, 2, 5, 32];

但是我需要将其发布到JSON中的API。我正在尝试实现这一点:

{'reportIDs': [1, 2, 5, 32]} 

有没有一种简单的方法可以在 Angular 中做到这一点?

无论您在哪里

需要此值,您都可以像您的问题中一样创建该对象:

var obj = {'reportIDs': arr};

你不需要',但它们不会造成任何伤害。

但是,如果您确实需要发送 JSON,那么您的示例不是 JSON。在 JSON 中,属性名称必须用引号引起来。创建有效 JSON 的最简单方法是使用 JSON.stringify

var json = JSON.stringify({reportIDs:arr});

如果要将其发送到某个位置,则将使用该值作为$http调用中的data

您可能希望使用angular.toJson而不是直接使用JSON.stringify,因为它跳过了一些内部 Angular prooperties。

您需要向服务器发送 Ajax 请求

如果要保留 json 代码,请将其作为字符串插入

$http.post("the_url_to_sent_data",
   {'json' : JSON.stringify({'reportIDs': arr})}
).then(function (response) {
    // Hey, i got a responce
    return response;
});

然后获取 json 参数的值并对其进行解析。

或者只是发送数据并让库解析它们

$http.post("the_url_to_sent_data",
   {'reportIDs': arr}
).then(function (response) {
    // Hey, i got a responce
    return response;
});