Pardot API-返回JSON而不是XML

时间:2019-05-15 19:59:14

标签: guzzle pardot

我正在使用GuzzleHttp将请求发送到Pardots API。

class PardotIntegration {

    private $client;

    private $apikey;



    public function __construct() {
        $this->client  = new \GuzzleHttp\Client();
    }

    public function authenticate() {
        $params = [
            'email' => 'abc@example.com',
            'user_key'   => '3487328947239478927',
            'password' => 'password'
        ];

        $res = $this->client->post('https://pi.pardot.com/api/login/version/3', [

            'form_params' => $params
        ]);

        echo $res->getBody();


    }


}

$pardot = new PardotIntegration;

$pardot->authenticate();

文档说明您可以从请求中返回XML或JSON:http://developer.pardot.com/#changing-the-api-response-format

但是,我不知道如何返回JSON而不是默认的XML。

我尝试添加

$res = $this->client->post('https://pi.pardot.com/api/login/version/3', [
            'headers' => [
                'Accept' => 'application/json'
            ],
            'form_params' => $params
        ]);

但是它仍然返回XML。

1 个答案:

答案 0 :(得分:1)

他们的文档不好。

我发现您需要添加到身体参数的特定请求中隐藏了

'format' => 'json'