node.js+express+jade系列五:ajax登录
本文通过jquery实现简单的无刷新登录
1:首先要在router中配置登录请求,因为登录需要传user和pwd考虑到安全需用post请求
{
path:'/',
method :'post',
handler:user.login
}
2:index.jade需要引用jquery-1.7.1.min文件
script(type="text/javascript", src="/javascripts/jquery-1.7.1.min.js")
上篇文章中已经写好登录见面,登录按钮方法为loginClick(),下面来写登录方法
此处又用到了cookie保证客户端判断是否登录,cookie就不在介绍。
script(type="text/javascript").
//登录
function loginClick(){
var user = $("#username").val();
$.post("/", {"user": user}, function(data, status){
data = $.parseJSON(data);
if(status){
if(data.login){
$("#login_success").show().html("welcom " + user);
$("#login_fm").hide();
setCookie("user", user);
}else{
alert("用户名或密码错误!");
}
}else{
alert("登录失败!");
}
});
}
$.post();jquery的post请求方式
后端node处理方法如下
exports.login = function(req, res){
var data = tool.handlePostArg(req, res);
req.session.name = data.user;
res.write('{ "login": true }', "utf-8");
res.end();
};
此时登录的post请求处理完成
在浏览器中输入http://localhost:50022/
点击 登录 按钮,完成登录