ASHX上传接口源码: <%@ WebHandler Language="C#" Class="UploadImage" %> using System; using System.Web; using System.IO; public class UploadImage : IHttpHandler { public void ProcessRequest(HttpContext context) { if (context.Request.Files.Count == 0) { context.Response.StatusCode = 400; context.Response.Write("No file uploaded."); return; } try { HttpPostedFile file = context.Request.Files[0]; string fileName = Path.GetFileName(file.FileName); string filePath = context.Server.MapPath("~/img/") + fileName; // 创建目录(如果不存在) Directory.CreateDirectory(Path.GetDirectoryName(filePath)); // 保存文件 file.SaveAs(filePath); // 返回文件名,包含路径前缀 context.Response.ContentType = "text/plain"; context.Response.Write("img/" + fileName); } catch (Exception ex) { context.Response.StatusCode = 500; context.Response.Write("Error: " + ex.Message); } } public bool IsReusable { get { return false; } } } |