PHP通過curl方式傳參給java接口報錯:JSONObject["xxx"] is not a JSONObject
PHP 對變量進行 JSON 編碼 (json_encode()
) 返回字符串,而接口參數需要 json 對象。
{"code":0,"data":{"isSrvAccount":0},"mccode":0,"errObj":{},"reqId":"S1B6Mt01w","seqId":"d4d7435b-75ca-962e-17b6-cbc478da83d8"}
解決辦法:將變量 json_decode()
后即可。
例:
// 轉成JSON對象
$test = json_decode($test);
print_r 打印
stdClass Object
(
[code] => 0
[data] => stdClass Object
(
[isSrvAccount] => 0
)
[mccode] => 0
[errObj] => stdClass Object
(
)
[reqId] => S1B6Mt01w
[seqId] => d4d7435b-75ca-962e-17b6-cbc478da83d8
)
如果是 curl 方式的話記得設置 CURLOPT_HTTPHEADER
// 設置HTTP頭
curl_setopt ( $curl, CURLOPT_HTTPHEADER, ["Content-Type: application/json"] );