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.