2009-11-16 4 views
82

커맨드 라인에서 컬 (curl) 조작을 실행 중이고 헤더를 XML로 설정하는 데 문제가 있습니다. -H 옵션을 사용하여 Content-Type을 강제로 xml로 만들지 만, 명령을 실행하면 헤더가 urlencoded로 보내지는 것을 볼 수 있습니다.이 urlencoded는 보내는 데이터 값 중 하나를 오염시킵니다. 누군가가 "Application/atom + xml"대신 "application/x-www-form-urlencoded"로 Content-Type이 항상 다시 설정되는 이유를 설명 할 수 있습니까?컬 설정 내용 유형이 잘못되었습니다.

저는이 API를 사용하여 YouTube에서 업로드 토큰을 검색하는 데 사용하고 있습니다. 유사한 명령을 사용하여 인증 토큰을 검색하는 데 문제가 없습니다.

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 

답변

199

은 당신이 콜론이 아닌 equals와

-H "Content-Type:text/xml" 

를 지정하려는 생각합니다.

+0

예. 그거였다. –

+4

콜론으로, 같음이 아닙니다. +1, 선생님 – Dacav

관련 문제