在網絡的一面,我有兩個字段:名稱和文檔。文檔是一個文件字段,名稱就是用戶想要在應用程序中調用該文件的內容。如何使用curl CLI將文件上傳到Rails應用程序的ruby中?
這是我曾嘗試:
curl -F "media[document][email protected]" -F "media[name]=api" "http://example.com/medias/create.xml?api_key=123"
,但我得到一個錯誤InvalidAuthenticityToken。 僅當我嘗試上載文件/製作媒體對象時,纔會出現此錯誤。其他API/xml命令工作(不涉及文件的)
使用cURL上傳文件的正確方法是什麼?
編輯: 加入-H「內容類型:應用/ xml」的上述捲曲命令使服務器產生這樣的錯誤:
/!\ FAILSAFE /!\ Tue Jan 24 08:45:03 -0500 2012
Status: 500 Internal Server Error
#<REXML::ParseException: malformed XML: missing tag start
Line:
Position:
Last 80 unconsumed characters:
<:??OH?ɽ?H? ???g??yx~t????op?.$?????P&W ??"?
通常的XML被使用-d參數提供。但我不認爲文件可以包含在XML中?也許他們可以? IDK的。
這是一個網絡應用程序和API。大部分使用POST工作的其他操作。但是這個文件有些奇怪。如果我有一個API密鑰,我不應該禁用僞造文件,對吧? – NullVoxPopuli
那麼,這取決於如何實現api_key機制,這聽起來不像rails默認提供的東西。 – aromero
對,它使用restful_auth。 http://www.justinbritten.com/work/2009/05/rails-api-authentication-using-restful-authentication/ – NullVoxPopuli