1
我正在使用插件通过Ajax上传图像。这个插件的js源代码是here。请求标头在IE中不可用
如果你看到从1200起线,你注意到这一点:
// build query string
params = params || {};
params['qqfile'] = name;
var queryString = qq.obj2url(params, this._options.action);
xhr.open("POST", queryString, true);
xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest");
xhr.setRequestHeader("X-File-Name", encodeURIComponent(name));
xhr.setRequestHeader("Content-Type", "application/octet-stream");
xhr.send(file);
所以基本上,上传的文件名可以作为qqfile
参数或页眉VAR:X-File-Name
。这两种方法在FF /铬完美地工作与此ASP.NET MVC代码:
public JsonResult AjaxUpload(String qqfile)
{
String fileName = System.Web.HttpContext.Current.Request.Headers["x-file-name"];
//rest of the code
}
但在IE中,没有这些作品的?头var为空(在调试我清楚地看到,这个参数是未发送)和1qqfile
始终为"System.Web.HttpPostedFileWrapper"
。
有谁知道如何解决这个问题?
ps:这个插件的演示是here。
干得好先生:)认为这将是一个头痛。您的解决方案适用于我。唯一的事情是qqFile.FileName获取我的完整路径,所以我不得不拆分出实际的文件名。 –
哇...它的工作,thanx! –