<%@ WebHandler Language="C#" Class="UploadImage" %> using System; using System.Web; using System.Net; using System.IO; using System.Drawing; using System.Drawing.Imaging; using Tencent; public class UploadImage : IHttpHandler { public void ProcessRequest(HttpContext context) { Tencent.Weixin wx = new Tencent.Weixin(context); wx.Messager.GetAccesstoken(); string access_token = Tencent.WeixinStatic.AccessToken.Token; if (access_token == "") { context.Response.Write("0"); context.Response.End(); return; } string allid = context.Request.QueryString["download"].ToString(); string[] allidArr = allid.Split(','); string result = ""; string strpath = ""; string wwwroot = context.Request.ApplicationPath; if (wwwroot == "/") wwwroot = ""; string fileSavaPath = "/app_files/default"; try { foreach (string itemid in allidArr) { string url = "https://qyapi.weixin.qq.com/cgi-bin/media/get?access_token=" + access_token + "&media_id=" + itemid; Log.WriteLog(context.Server.MapPath(wwwroot + "/app_wx/hse/logs"), "access_token:" + access_token + " media_id:" + itemid); HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(url); req.Method = "GET"; using (WebResponse wr = req.GetResponse()) { HttpWebResponse myResponse = (HttpWebResponse)req.GetResponse(); strpath = myResponse.ResponseUri.ToString(); //WriteLog("接收类别://" + myResponse.ContentType); WebClient mywebclient = new WebClient(); string filename = fileSavaPath + "/" + DateTime.Now.ToString("yyyyMMddHHmmssfff") + ".jpg.1"; string savepath = context.Server.MapPath(wwwroot + filename); //WriteLog("路径://" + savepath); mywebclient.DownloadFile(strpath, savepath); result += filename + "|"; } } } catch (Exception e) { context.Response.Write("0"); context.Response.End(); return; } if(result != "") { result = result.Substring(0, result.Length - 1); } context.Response.Write(result); } public bool IsReusable { get { return false; } } }