通过浏览器下载服务端图片到客户端
<%@ Page Language="C#" %> <% //使用方法 //DownloadFile.aspx?file=要下载的图片url string url = HttpContext.Current.Request.Url.Query.ToLower(); //file=dddd.jpg url = url.Replace("?file=", ""); Response.BufferOutput = false; Response.Clear(); Response.ContentType = "application/x-msdownload"; Response.AppendHeader("Content-Disposition", "attachment; filename=" + url); Response.ContentType = "application/octstream"; Response.CacheControl = "Private"; System.IO.Stream stm = new System.IO.FileStream(Server.MapPath(url), System.IO.FileMode.Open, System.IO.FileAccess.Read, System.IO.FileShare.Read); Response.AppendHeader("Content-length", stm.Length.ToString()); System.IO.BinaryReader br = new System.IO.BinaryReader(stm); byte[] bytes; for (Int64 x = 0; x < (br.BaseStream.Length / 4096 + 1); x++) { bytes = br.ReadBytes(4096); Response.BinaryWrite(bytes); System.Threading.Thread.Sleep(5); //休息一下,防止耗用带宽太多。 } stm.Close(); %>
前端调用下载
$("#download").click(function() { window.location.href = "DownloadFile.aspx?file=" + "/kjzbsc/qrcode.jpg"; });