前台:
$.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是刪除信息。
