1、login.html
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Cache-Control" content="no-cache">
<meta http-equiv="Expires" content="0">
<title>登录</title>
<link href="css/login.css" type="text/css" rel="stylesheet">
</head>
<body>
<div class="login">
<div class="message">后台管理系统</div>
<div id="darkbannerwrap"></div>
<form id="login-form" method="post" onsubmit="return false;">
<input id="username" name="username" placeholder="用户名" type="text"
autocomplete="off">
<hr class="hr15">
<input id="password" name="password" placeholder="密码" type="password"
autocomplete="off">
<hr class="hr15">
<button style="width: 100%;" type="submit"
onclick="login(this)">登录</button>
<hr class="hr20">
<span id="info" style="color: red"></span>
</form>
</div>
</body>
<script src="js/libs/jquery-2.1.1.min.js"></script>
<script src="js/common.js"></script>
<script src="js/aes.js">
</script>
<script src="js/pad-zeropadding-min.js"></script>
<script type="text/javascript">
// if (top != self) {
// parent.location.href = '/login.html';
// }
// var user = loginInfo();
// if (user != "") {
// location.href = '/';
// }
function login(obj) {
$(obj).attr("disabled", true);
var username = $.trim($('#username').val());
var password = $.trim($('#password').val());
if (username == "" || password == "") {
$("#info").html('用户名或者密码不能为空');
$(obj).attr("disabled", false);
} else {
var user=getAES(username);
console.log('user:'+user);
var pwd=getAES(password);
console.log('password:'+pwd);
$.ajax({
type : 'post',
url : '/home.do',
data : {username:user,password:pwd},
dataType:"json",
success : function(data) {
// if(data.code!="200"){
// parent.location.href = '/login.html';
// return false;
// }
// alert(data.data.token.token);
alert(data);
// location.href = '/';
},
error : function(xhr, textStatus, errorThrown) {
var msg = xhr.responseText;
alert(msg);
console.log(getDAes(msg));
// var response = JSON.parse(msg);
// $("#info").html(response.message);
// $(obj).attr("disabled", false);
}
});
}
}
</script>
</html>
2、common.js
//form序列化为json
$.fn.serializeObject = function()
{
var o = {};
var a = this.serializeArray();
$.each(a, function() {
if (o[this.name] !== undefined) {
if (!o[this.name].push) {
o[this.name] = [o[this.name]];
}
o[this.name].push(this.value || '');
} else {
o[this.name] = this.value || '';
}
});
return o;
};
//获取url后的参数值
function getUrlParam(key) {
var href = window.location.href;
var url = href.split("?");
if(url.length <= 1){
return "";
}
var params = url[1].split("&");
for(var i=0; i<params.length; i++){
var param = params[i].split("=");
if(key == param[0]){
return param[1];
}
}
}
// 检查登录状态
function loginInfo(){
var user = "";
$.ajax({
type : 'get',
url : '/sys/login.do',
async: false,
success : function(data){
if(data != null && data != ""){
user = data;
}
},
error: function(xhr,textStatus,errorThrown){
var msg = xhr.responseText;
var response = JSON.parse(msg);
$("#info").html(response.message);
}
});
return user;
}
function getAesString(data,key,iv){//加密
var key = CryptoJS.enc.Utf8.parse(key);
var iv = CryptoJS.enc.Utf8.parse(iv);
var encrypted =CryptoJS.AES.encrypt(data,key,
{
iv:iv,
mode:CryptoJS.mode.CBC,
padding:CryptoJS.pad.ZeroPadding
});
return encrypted.toString(); //返回的是base64格式的密文
}
function getDAesString(encrypted,key,iv){//解密
var key = CryptoJS.enc.Utf8.parse(key);
var iv = CryptoJS.enc.Utf8.parse(iv);
var decrypted =CryptoJS.AES.decrypt(encrypted,key,
{
iv:iv,
mode:CryptoJS.mode.CBC,
padding:CryptoJS.pad.ZeroPadding
});
return decrypted.toString(CryptoJS.enc.Utf8);
}
function getAES(data){ //加密
var key = 'dufy20170329java'; //密钥
var iv = 'dufy20170329java';
var encrypted =getAesString(data,key,iv); //密文
var encrypted1 =CryptoJS.enc.Utf8.parse(encrypted);
return encrypted;
}
function getDAes(data){//解密
var key = 'dufy20170329java'; //密钥
var iv = 'dufy20170329java';
var decryptedStr =getDAesString(data,key,iv);
return decryptedStr;
}