Curl paramètre le type de contenu de manière incorrecte


83

J'exécute une opération curl 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'exécute la commande, je peux voir que l'en-tête est envoyé comme urlencoded, ce qui entache l'une des valeurs de données que j'envoie. Quelqu'un peut-il m'expliquer pourquoi le Content-Type est toujours remis à "application / x-www-form-urlencoded" au lieu de "application / atom + xml"?

J'utilise ceci pour récupérer un jeton de téléchargement sur 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

Réponses:


201

Je pense que tu veux préciser

-H "Content-Type:text/xml"

avec un deux-points, pas un égal.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.