Я использую командную строку curl для выполнения POST через прокси, но мои данные формы исчезают до нулевой длины содержимого. Есть идеи, что я делаю не так?
Вот моя командная строка (используется общедоступная тестовая форма, чтобы другие могли ее попробовать):
curl -v --proxy-ntlm --proxy proxyserver:proxyport --proxy-user : -d "fname=a&lname=b" http://www.snee.com/xml/crud/posttest.cgi
-v = подробный
Следующие несколько аргументов помогают нам через прокси-сервер с использованием аутентификации Windows
-d = должен делать пост с заданными аргументами
Тем не менее, как ответ, так и подробный вывод на печать предполагают, что содержание формы исчезает. Завиток печатает «Content-Length: 0», а в возвращенном html отсутствуют оба аргумента и длина содержимого 0.
Ошибка, по-видимому, отсутствует на прокси-сервере, так как curl признает, что отправляет содержимое длиной 0. Кто-нибудь знает решение этой проблемы? Кто-нибудь еще видел это?
Обновление : этот человек , похоже, имеет ту же ошибку, но не предлагает никакого решения, кроме использования ntlm, которое мне нужно
Обновление 2 : Это определенно происходит только с аутентификацией NTLM, я попробовал альтернативный метод аутентификации, который работает. Кроме того, использование -F вместо -d (для данных в двоичной форме) приводит к сбою таким же образом.
Обновление 3 (временное решение) : Я немного обсудил список пользователей curl по этому поводу. Был предоставлен обходной путь, который должен использовать --proxy-anyauth вместо --proxy-ntlm. Я все еще исследую проблему, но этот метод работает для меня.