客戶端centos6.9、php7.1.21使用swoole_http_client通過post數(shù)據(jù)和上傳文件到服務端:
$data = [
'p1' => 1,
'p2' => 2,
'groups' => [20,30]
];
$cli->addFile('/home/test/photo.jpg', 'photo');
$cli->post('/index.php', $data, function ($cli) {
echo $cli->body;
});
服務端centos6.9、php7.1.21、apache2.2.15普通web應用:index.php
var_export($_POST);
exit;
結果打出來的數(shù)據(jù)是:(數(shù)組被轉成'Array'?。?!)
array(
'p1' => 1,
'p2' => 2,
'groups' => 'Array'
)
但是我期望的是:
array(
'p1' => 1,
'p2' => 2,
'groups' => array(20,30)
)
以上,請問是哪里使用存在問題,還是swoole_http_client本身問題?
如果不調用addFile文件則結果是正常的,swoole文檔中有說一般post是application/x-www-form-urlencoded,使用addFile后會被轉成form-data,是不是swoole轉的時候有問題?
swoole_http_client調用addfile后post,數(shù)組被轉成Array字符串,服務端不能正常獲取數(shù)據(jù)?
ibeautiful
2019-03-09 01:35:19