Javascript 将json数组转换为查询字符串会导致null

Javascript 将json数组转换为查询字符串会导致null,javascript,json,query-string,Javascript,Json,Query String,我试图实现的是将json对象作为查询字符串发送到API 我拥有的json对象是: { "Name":"Dlsajdsa", "ImageUrls":["/Images/Facility/8353/85e26a18-4366-4412-b37a-72d94f2ccda5.jpg"] } 我想将其转换为类似于?Name=&imageURL的内容= 但是,当使用$.param(json)时,我得到以下结果: ?Name=Dlsajdsa&ImageUrls%5B%5D=%2FImag

我试图实现的是将json对象作为查询字符串发送到API

我拥有的json对象是:

{
  "Name":"Dlsajdsa",
  "ImageUrls":["/Images/Facility/8353/85e26a18-4366-4412-b37a-72d94f2ccda5.jpg"]
}
我想将其转换为类似于?Name=&imageURL的内容=

但是,当使用$.param(json)时,我得到以下结果:

?Name=Dlsajdsa&ImageUrls%5B%5D=%2FImages%2FFacility%2F8353%2F85e26a18-4366-4412-b37a-72d94f2ccda5.jpg
从API的角度来看,这将导致ImageUrls数组为空


这里缺少什么?

查询参数称为
ImageUrls%5B%5D
,这意味着
ImageUrls[]
,而不是您期望的ImageUrls。

您可以尝试
$.param(json,true)
基于的文档,我想说这是您想要使用的代码:

var json = {
  "Name":"Dlsajdsa",
  "ImageUrls":["/Images/Facility/8353/85e26a18-4366-4412-b37a-72d94f2ccda5.jpg"]
};

var recursiveDecoded = decodeURIComponent($.param(json));

// "Name=Dlsajdsa&ImageUrls[]=/Images/Facility/8353/85e26a18-4366-4412-b37a-72d94f2ccda5.jpg"