Obtenir la taille de la demande de boucle envoyée


9

Existe-t-il un moyen d'obtenir la taille d'une curldemande par programme?

Par exemple, si je le fais

curl 'http://www.example.com/url' \
-H 'Cookie: cookie=cookiedata;' \
-H 'X-CSRFToken: csrffake' \
--data 'example=moredata \
--compressed

Je veux savoir quelle est la taille de ma demande envoyée?


La taille de la demande d'en-tête?
Braiam

@Braiam La taille de la requête résultante (à l'exclusion des couches Ethernet / IP). Donc, en-tête + données, je pense.
polym

Réponses:


12

Ok après avoir man curlcreusé, je pense avoir trouvé la réponse, bien que je ne sois pas sûr à 100% de sa validité:

 -w, --write-out <format>
     Defines  what  to display on stdout after a completed and successful operation.
     [...]
     The variables present in the output format will be substituted by the
     value or text  that  curl thinks fit, as described below.
     All variables are specified as %{variable_name} and to output a
     normal % you just write them as %%.

     [...]
          size_request   The total amount of bytes
                         that were sent in the HTTP request.

          size_upload    The total amount of bytes that were uploaded.

Cela signifie ajouter un -w '%{size_request} %{size_upload}', puis ajouter les nombres résultants dans la sortie après que la demande vous donnera la taille de la demande au total.


1
Remarque: cela n'inclut pas la surcharge TLS si vous utilisez HTTP.
dcoles
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.