前台:
$.ajax({ type: "put", url: "Handler/Login.ashx", data: { "act": "islogin" }, dataType: "html", success: function (mes) { if (mes == null) { $('#title').html("用户信息"); $('#userInformation').addClass("yis"); $('#userlogin').removeClass("yis"); } } }); return false; });
后台:
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using Web.Model; using System.Web.SessionState; namespace Web.Handle { /// <summary> /// Login 的摘要说明 /// </summary> public class Login : IHttpHandler,IReadOnlySessionState { BookstoreDBEntities bookstore = new BookstoreDBEntities(); public void ProcessRequest(HttpContext context) { string act = context.Request.Params["act"]; if (act == "login") { string userName = context.Request.Params["userName"]; string password = context.Request.Params["password"]; var model = bookstore.User_Tbl.First(u => u.userName == userName); if (model == null) { string mes = "用户不存在!"; context.Response.Write(mes); } else { if (model.password != password) { string mes = "密码错误!"; context.Response.Write(mes); } else { context.Response.Write(userName); context.Session["userName"] = userName; } } } else if (act == "islogin") { //if (context.Session["userName"] == null) // context.Response.Write(null); //else context.Response.Write(context.Session["userName"]); } context.Response.Clear(); context.Response.Close(); }
刚开始时ajax的type我用的是post 然后就一直报错、后面改成put就通过了,表示不是很理解。
-------------------------------------------------------------------------------------------------
现在看起来当时好傻,按照HTTP的标准协议put是提交修改的,post是提交数据库新加内容的,get是获取查询,delete是删除信息。