我有一個帶有上傳字段的ExtJs表單。當我登錄表單時,Accept-header是錯誤的。響應是JSON尚SENT接受頭是:fileupload接受標題
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
我的猜測是,它是瀏覽器的默認值。
在鉻這導致警告:資源解釋爲文獻但與MIME類型application/JSON傳送。
在Firefox中這會導致文件下載。
結論:我必須要改變/在接受頭設置爲application/json
煎茶的最高審計機關documentation它有一個headers
參數,但我已經測試和文件上傳這是行不通的。評論說它不被支持。 (發現同樣的結果在另一個thread)
擺脫了文件下載的任何建議/設置正確的接受頭......它不一定是一個ExtJS的sollution。如果你可以給我一個簡單的javaScript解決方案來設置文件上傳表單上的accept標頭,我可以將它製作成sencha框架。
UPDATE:
ExtJS的形式提交:
form.submit({
url: API_URLS.addDocument,
waitMsg: 'Uploading your document...',
headers: {
"Accept": 'application/json' //doesn't work
},
success: function() {
...
},
failure: function(){
...
}
});
幕後它創建類似於這樣一個普通的形式:
<form action="API_URLS.addDocument" enctype="multipart/form-data" method="post">
<input type="file"/>
</form>
可以通過JavaScript(提交submit()
)
你是如何執行的請求可以粘貼一些代碼? – Lloyd