php cURL CURLOPT_VERBOSE не показывает полезную нагрузку

Хотя приведенный ниже результат curl предоставляет полезную информацию заголовка, он не предоставляет информацию полезной нагрузки. Например, я хотел бы увидеть {"jason_index", "json_value"} в предоставленной информации об отладке.

1.) Можно ли отображать полезную нагрузку inline с подробным режимом?

2.) Каков наилучший способ просмотра отправленной полезной нагрузки, обрабатываемой cURL?

* About to connect() to domain.com port 443 (#0) * Trying IP... * connected * Connected to domain.com (IP) port 443 (#0) * successfully set certificate verify locations: * CAfile: /usr/share/curl/curl-ca-bundle.crt CApath: none * SSL connection using RC4-SHA * Server certificate: * subject: /serialNumber=SN/C=CA/ST=Ontario/L=Ottawa/O=ORG Inc./CN=*.domain.com * start date: 2010-05-10 22:23:08 GMT * expire date: 2015-08-12 19:17:14 GMT * subjectAltName: alt.domain.com matched * issuer: /C=US/O=Equifax/OU=CA * SSL certificate verify ok. * Server auth using Basic with user 'userid' > POST request_uri.json HTTP/1.1 Authorization: Basic auth_string= User-Agent: UA Host: alt.domain.com Accept: */* Content-Type: application/json; charset=utf-8 Content-Length: 85 < HTTP/1.1 422 Unprocessable Entity < Server: ServerName < Date: Thu, 21 Mar 2013 20:08:56 GMT < Content-Type: application/json; charset=utf-8 < Transfer-Encoding: chunked < Connection: keep-alive < Status: 422 Unprocessable Entity < * Connection #0 to host alt.domain.com left intact * Closing connection #0 

Пример оператора cURL

 $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_VERBOSE, true); curl_setopt($ch, CURLOPT_STDERR, fopen(dirname(__FILE__) . "/headers.txt", "w+")); $result = curl_exec($ch); 

    Я недавно столкнулся с этой проблемой, и только так, как мне удается понять, что происходит, это использовать прокси-сервер отладки, например:

    • burp suite – Linux / Windows / Mac (Java)
    • fiddler – Windows

    Другое решение использует пакетный инспектор (этот параметр не позволит вам видеть трафик HTTPS ):

    • WireShark

    Решение с прокси-сервером легко настроить, просто установить и использовать:

     curl_setopt($ch, CURLOPT_PROXY, 'localhost:8080'); // default for burp suite curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // ignore certs while connecting to https