Я знаю, что это немного поздно, но мой любимый способ сделать это - netcat
, так как вы получаете именно то, что отправлено curl
; это может отличаться от параметров --trace
или --trace-ascii
, которые не будут правильно отображать символы, не входящие в ASCII (они просто отображаются в виде точек или должны быть декодированы).
Вы можете сделать это очень легко, открыв два окна терминала первого типа:
nc -l localhost 12345
Это открывает процесс прослушивания на порту 12345 вашего локального компьютера.
Во втором окне терминала введите команду curl, например:
curl --form 'foo=bar' localhost:12345
В первом окне терминала вы увидите в точности то, что curl отправил в запросе.
Теперь, конечно, nc
не отправит ничего в ответ (если вы не введете его в себя), поэтому вам нужно будет прервать команду curl (control-c) и повторить процесс для каждого теста.
Тем не менее, это полезный вариант для простой отладки вашего запроса, поскольку вы нигде не участвуете в двустороннем цикле или не производите фиктивных итеративных запросов, пока не получите правильное решение; когда вы довольны командой, просто перенаправьте ее на действительный URL-адрес, и все готово.
Вы можете сделать то же самое для любой библиотеки cURL, просто отредактируйте ваш запрос, указав локального nc
слушателя, пока вы не будете довольны им.