我有一个带有上传字段的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