使用Guzzle在post请求中传递数组

时间:2017-07-07 11:44:06

标签: php guzzle guzzle6

我正在尝试在post请求有效负载中传递数组。

url = http://IP:PortNo/index.php/v1/login

有效载荷:

data={ "terminal_id": "terminal_id", "api_login": "api_login", "api_key": "api_key", "merchant_code": "merchant_code" }

我所做的是:

$data = ['terminal_id' => $this->terminal_id , 'api_login' => $this->api_login,
        'api_key' => $this->api_key , 'merchant_code' => $this->merchant_code];
$response = $this->client->post($url, array('data' => $data));

但我得到的回应是:

  

"未找到请求数据"

这意味着我的数据有效负载未正确形成。任何想法?

1 个答案:

答案 0 :(得分:2)

$response = $this->client->post($url, ['json' => $data]);

请参阅标题为json:http://docs.guzzlephp.org/en/stable/request-options.html#json

的部分中的Guzzle6手册