我正在执行卷曲请求
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($postData));
curl_setopt($ch, CURLOPT_POST, 1);
$headers = array();
$headers = ["Content-Type:application/json","Accept:application/json"];
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$result = curl_exec($ch);
if (curl_errno($ch)) {
echo 'Error:' . curl_error($ch);
}
curl_close ($ch);
return $result;
上述curl请求应返回json格式的字符串,但会以javascript对象的形式获取字符串。
string(68) "{data:{errorCode:AC01,errorMessage:SansID 53563857 is exist.}}"
就像我尝试从post man api做相同的事情一样,返回完美的json。
{"data":{"errorCode":"AC01","errorMessage":"SansID 53563857 is exist."}}
请让我知道我在哪里做错了。
答案 0 :(得分:0)
使用json_decode将String转换为Object(stdClass)或数组: 我在使用WordPress(cURL)和Laravel(passport)支持的API时遇到相同的问题,该API返回JSON但以字符串格式。我保存了回复
//save json string into variable json object and return result
$response = curl_exec($curl);
//convert t
return (json_decode($response));
请参阅此链接here,以获取类似的解决方案