我使用ExtJs4上传了几个文件。 服务器端 - ASP MVC。
我的问题:来自extJS的请求无法抓住行动方法!
Ext代码:
{
xtype: 'form',
itemId: 'importForm',
layout: {
type: 'hbox'
},
items: [
{
xtype: 'filefield',
name: 'IncFile',
fieldLabel: 'Choose files',
labelWidth: 200,
msgTarget: 'side',
allowBlank: false,
anchor: '100%',
buttonText: 'Choose',
listeners: {
afterrender: function (field) {
field.fileInputEl.set({
multiple: 'multiple'
});
}
}
},
{
xtype: 'button',
text: 'Load',
handler: function () {
var form = this.up('form').getForm();
if (form.isValid()) {
form.submit({
url: 'Loader/Test',
waitMsg: 'Loading...',
success: function (fp, o) {
Ext.Msg.alert('Success','some message....');
}
});
}
}
}
]
}
MVC控制器中的操作:
[HttpPost]
public ActionResult Test()
{
//some code
}
所以,如果我只上传一个文件 - 那没关系。我可以从Request.Files中获取它。 但是,这不适用于多个文件! 请求失败,未找到“#404;”#。
此处请求有效负载:
------WebKitFormBoundaryRkYIPo3BvQMnKfIJ
Content-Disposition: form-data; name="IncFile"; filename="file1.zip"
Content-Type: application/x-zip-compressed
------WebKitFormBoundaryRkYIPo3BvQMnKfIJ
Content-Disposition: form-data; name="IncFile"; filename="file2.zip"
Content-Type: application/x-zip-compressed
------WebKitFormBoundaryRkYIPo3BvQMnKfIJ
Content-Disposition: form-data; name="IncFile"; filename="file3.zip"
Content-Type: application/x-zip-compressed
------WebKitFormBoundaryRkYIPo3BvQMnKfIJ--
答案 0 :(得分:0)
所以...... web.config中的原因。我的文件很大。
这解决了我的问题。
<system.webServer>
.............
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="4294967295" />
</requestFiltering>
</security>
</system.webServer>