2009-11-16 3 views
82

Je cours une opération de boucle sur la ligne de commande et j'ai du mal à forcer l'en-tête à définir comme XML. J'utilise l'option -H pour forcer le Content-Type à être xml, cependant, une fois que j'ai exécuté la commande, je peux voir que l'en-tête est envoyé comme urlencoded qui altère l'une des valeurs de données que j'envoie. Quelqu'un peut-il m'expliquer pourquoi le Content-Type est toujours réinitialisé à "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 en utilisant leur API. Je n'ai aucun problème à récupérer un jeton d'authentification en utilisant une commande similaire.Paramètre Curl Type de contenu incorrect

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 

Répondre

199

Je pense que vous voulez spécifier

-H "Content-Type:text/xml" 

avec deux points, pas un signe égal.

+0

Oui. C'était ça. –

+4

Avec un deux-points, pas un égal. +1 pour vous, monsieur – Dacav