web-dev-qa-db-fra.com

Curl setting Content-Type incorrectement

J'exécute une opération curl sur la ligne de commande et je ne parviens pas à forcer l'en-tête à être défini en tant que XML. J'utilise l'option -H pour forcer le type de contenu à être xml. Cependant, une fois que j'exécute la commande, je peux voir que l'en-tête est envoyé en tant qu'urlencoded, ce qui altère l'une des valeurs de données que j'envoie. Quelqu'un peut-il m'expliquer pourquoi le type de contenu est toujours réinitialisé sur "application/x-www-form-urlencoded" au lieu de "application/atom + xml"?

J'utilise ceci pour récupérer un jeton de téléchargement de YouTube à l'aide de leur API. Je n'ai aucun problème à récupérer un jeton d'authentification à l'aide d'une commande similaire.

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
82
Miriam P. Raphael

Je pense que vous voulez préciser

-H "Content-Type:text/xml"

avec deux points, pas un égal.

200
qedi