Como ejemplo, PUBLICANDO en un servidor web con el argumento -v:
curl -v http://testserver.com/post -d "firstname=john&lastname=doe"
Y la salida
> POST /post HTTP/1.1
> User-Agent: curl/7.19.7 (universal-apple-darwin10.0) libcurl/7.19.7 OpenSSL/0.9.8l zlib/1.2.3
> Host: testserver.com
> Accept: */*
> Content-Length: 28
> Content-Type: application/x-www-form-urlencoded
>
< HTTP/1.1 200 OK
(etc)
No se menciona la información que publiqué.
¿Hay una opción en cURL para mostrar la cadena "firstname = john & lastname = doe" en la salida?
Nota: Obviamente, la cadena que quiero está en el comando que ejecuté, pero hay varias otras opciones de publicación como --form y --data-ascii, etc. Me gustaría ver los datos sin procesar que se envían al servidor.
Respuestas:
Lo más cercano que obtuve sin usar
tcpdump
es usar la--trace-ascii
opción:Desafortunadamente, esto no funciona cuando publicas
multipart/form-data
:fuente
-v
o,--verbose
ya que anulan la directiva de rastreo.--trace-ascii
funcionó para mí en OS X 10.8.5 Mountain Lion. He subido una entidad de formulario multiparte con dos imágenes y un cuerpo json y todo funcionó como se esperaba--trace-ascii /dev/stdout
que puedas--trace-ascii -
(guión)O podrías probar con https://httpbin.org/
fuente
Me gustaría agregar la alternativa netcat
fuente
Podrías usar Charles y
curl --proxy localhost:8888
. Simples!fuente
https
no era un requisito en la pregunta: p