首页 新闻 会员 周边

使用Response实现下载文件,浏览器并没有弹出文件保存框,请问什么原因?

0
悬赏园豆:20 [已关闭问题] 关闭于 2016-08-03 17:43

Context.Response.ContentType = "application/octet-stream"; //通知浏览器下载文件而不是打开
Context.Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
byte[] con = webClient.DownloadData(url);

Context.Response.BinaryWrite(con);
Context.Response.Flush();

< >
分享
所有回答(1)
0

JQuery的ajax函数的返回类型只有xml、text、json、html等类型,没有“流”类型,所以我们要实现ajax下载,不能够使用相应的ajax函数进行文件下载。但可以用js生成一个form,用这个form提交参数,并返回“流”类型的数据。在实现过程中,页面也没有进行刷新。

fixbug11 | 园豆:10 (初学一级) | 2016-08-03 17:42
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册