<%@ WebHandler Language="C#" Class="Handler" %> using System; using System.Web; using System.Data; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using System.Collections.Generic; using System.Collections; using System.Web.SessionState; using System.Linq; using System.Reflection; using System.IO; using System.Text; using Stooges; using System.Threading.Tasks; using System.Threading; public class Handler : HttpTaskAsyncHandler { public override async Task ProcessRequestAsync(HttpContext context) { try { //if (context.User == null || context.Request.IsAuthenticated == false) //{ // context.Response.StatusCode = 401; // context.Response.End(); //} string[] fileKeys = context.Request.Files.AllKeys; string fileName = ""; foreach (string fileKey in fileKeys) { HttpPostedFile file = context.Request.Files[fileKey]; string extension = file.FileName.Substring(file.FileName.LastIndexOf(".")); fileName = Guid.NewGuid() + extension; file.SaveAs(context.Server.MapPath(@"~\img\" + fileName)); } context.Response.ContentType = "text/plain"; context.Response.Write(fileName); } catch (Exception ex) { context.Response.ContentType = "text/plain"; context.Response.StatusCode = 400; //context.Response.Write(ex.Message); } } public override bool IsReusable { get { return false; } } } //public class Handler : IHttpHandler //{ // public void ProcessRequest(HttpContext context) // { // try // { // //if (context.User == null || context.Request.IsAuthenticated == false) // //{ // // context.Response.StatusCode = 401; // // context.Response.End(); // //} // string[] fileKeys = context.Request.Files.AllKeys; // string fileName = ""; // foreach (string fileKey in fileKeys) // { // HttpPostedFile file = context.Request.Files[fileKey]; // string extension = file.FileName.Substring(file.FileName.LastIndexOf(".")); // fileName = Guid.NewGuid() + extension; // file.SaveAs(context.Server.MapPath(@"~\img\" + fileName)); // } // context.Response.ContentType = "text/plain"; // context.Response.Write(fileName); // } // catch (Exception ex) // { // context.Response.ContentType = "text/plain"; // context.Response.Write(ex.Message); // } // } // public bool IsReusable // { // get // { // return false; // } // } //}