【发布时间】:2021-11-04 07:18:36
【问题描述】:
我正在向 api 发布帖子,并使用 php 构建 cURL。
这是编译要发送的数据集的php:
$griddata = array(
"agentId"=>'2',
"categoryIds"=>$available_cat_id_list,
"dateFrom"=>'2021-12-11',
"dateTo"=>'2021-12-18',
"propertyId"=>'1',
"rateIds"=>$available_rate_ids_list
);
这两个变量包含一串 ID,如下所示: [15、16、17、18、19、20]
发送的数据如下所示:
{
"agentId":"2",
"categoryIds":"[15, 16, 17, 18]",
"dateFrom":"2021-12-11",
"dateTo":"2021-12-18",
"propertyId":"1",
"rateIds":"[7, 8, 9, 19, 20]"
}
这失败了。但是,当我手动添加两个不带引号的值时,它会起作用,例如:
"categoryIds":[15, 16, 17, 18],
我怎样才能让 php 以这种格式制作有效载荷?
谢谢!
【问题讨论】:
-
听起来像非常好的行为,如果,如您所说,那些“包含 a string 的 ID 像这样”。制作这些字符串数组,它应该可以正常工作
-
为什么你把你的列表放在一个字符串中,然后变成一个数据结构,然后再变成另一个字符串?顺便说一句:请养成在此处提问之前提取并提供minimal reproducible example 的习惯。您会注意到这与 cURL 完全无关!此外,清楚地说明你做了什么,你得到了什么以及你想要什么(+为什么)可能会引导你自己找到解决方案。