Неверная настройка типа содержимого Curl


Я запускаю операцию curl в командной строке и испытываю проблемы с принудительным заданием заголовка как XML. Я использую опцию-H, чтобы заставить тип контента быть xml, однако, как только я запускаю команду, я вижу, что заголовок отправляется как urlencoded, который портит одно из значений данных, которые я отправляю. Может ли кто-нибудь объяснить мне, почему тип контента всегда возвращается к "application/x-www-form-urlencoded" вместо "application/atom+xml"?

Я использую это получить маркер загрузки с YouTube, используя их API. У меня нет проблем с получением маркера аутентификации с помощью аналогичной команды.

curl -S -v 
--location http://gdata.youtube.com/action/GetUploadToken
-H Content-Type= text/xml
--data content=some xml content here
--data GoogleLogin auth="DQAAAHU.....TiU95NXYSLFFENTbNQUy....NjfFoC0nyEKaz-ejEkA_w"
-H X-Gdata-Key: key=AI39si5EQyo-_L......78eL80r-MooHXtrA48R82AShoQ
-H Content-Length=445
1 82

1 ответ:

Я думаю, что вы хотите указать

-H "Content-Type:text/xml"

с двоеточием, а не равных.