curl https://passport.jd.com/new/login.aspx

https://passport.jd.com/new/misc/js/login2016.js?v=201702221137

/**
* sdk - login2015.js
*
*/
var LoginConstant = {
HTTP_SCHEME: "http:",
HTTPS_SCHEME: "https:",
REMOTE_COUNTRY_CODE: "//misc.360buyimg.com/user/passport/1.0.0/js/login.countrycode-1130.js",
LOCAL_COUNTRY_CODE: "user/passport-2015/js/login.countrycode.js"
}; var Util = {
Cookie: {
set: function (name, value, expire) {
var exp = new Date();
exp.setTime(exp.getTime() + expire * 24 * 60 * 60 * 1000);
document.cookie = name + "=" + encodeURIComponent(value, "UTF-8") + ";expires=" + exp.toGMTString() + ";domain=passport.jd.com;path=/";
},
get: function (key) {
var cookies = document.cookie ? document.cookie.split('; ') : [];
for (var i = 0, l = cookies.length; i < l; i++) {
var parts = cookies[i].split('=');
var name = parts.shift();
var cookie = parts.join('=');
if (key && key === name) {
return cookie;
}
}
},
setALCookie: function () {
if ($("input[name='chkRememberMe']").prop("checked")) {
var Days = 3 * 30;
this.set("alpin", $("#loginname").val(), Days);
} else {
var v = this.get("alpin");
if (v) {
this.set("alpin", "", -100);
}
}
}
},
Header: {
getProtocol: function(){
var parentScheme = '';
try{
parentScheme = parent.location.protocol;
}catch(e){
} if(!parentScheme){
var referer = document.referrer;
if(referer.indexOf(LoginConstant.HTTPS_SCHEME) == 0){
parentScheme = LoginConstant.HTTPS_SCHEME;
}else{
parentScheme = LoginConstant.HTTP_SCHEME;
}
}
return parentScheme;
}
}
}; (function(){
/**
* 加密密码
* @param pwd
*/
function getEntryptPwd(pwd){
var pubKey = $('#pubKey').val();
if(!pwd || !pubKey || !SysConfig.encryptInfo){
return pwd;
}
var encrypt = new JSEncrypt();
encrypt.setPublicKey(pubKey);
return encrypt.encrypt(pwd);
} /**
* 初始化国家代码弹层请求
*
* @param obj
*/
function initCountryCode(obj) {
if (obj.countryTips) {
var resURL = LoginConstant.REMOTE_COUNTRY_CODE;
if (obj.localRes) {
resURL = LoginConstant.LOCAL_COUNTRY_CODE;
}
seajs.use(resURL, function (CountryCodeLayer) {
CountryCodeLayer.init();
});
}
} //显示验证码
function showAuthCode(){
if($("#o-authcode").css("display")!="none"){
return;
}
var loginUrl = "../uc/showAuthCode";
var loginName=$("#loginname").val();
$.ajax({
type: "POST",
url: loginUrl + "?r=" + Math.random()+"&version=2015",
contentType: "application/x-www-form-urlencoded; charset=utf-8",
data: {
loginName:loginName
},
dataType:"text",
success: function (result) {
if (result) {
var obj = eval(result);
if (obj.verifycode) {
$("#o-authcode").show();
$("#JD_Verification1").click();
} else {
$("#o-authcode").hide();
}
}
}
});
} function rememberMeCheck(){
if(!window.SysConfig.rememberMeShowEnable){
return;
}
var loginName=$("#loginname").val();
if(!loginName){
return;
}
$.ajax({
type: "POST",
url: "../uc/rememberMeCheck?r=" + Math.random()+"&version=2015",
contentType: "application/x-www-form-urlencoded; charset=utf-8",
data: {
loginName:loginName
},
dataType:"text",
success: function (result) {
var data = eval(result);
if (data.caluEnable){
return;
}
if (data.checked) {
if($('.msg-error').text() != ""){
$('.msg-error').show();
$('.msg-warn').hide();
}else{
if($('.msg-warn').text() != ""){ }else{
$('.msg-warn').html("<b></b>公共场所不建议自动登录,以防账号丢失");
}
$('.msg-warn').show();
}
$('#autoLogin').prop("checked",true);
}else{
$('.msg-warn').hide();
$('#autoLogin').prop("checked",false);
}
}
});
}
//登陆操作
function loginSubmit(callback) {
$('#loginsubmit').text('正在登录...');
if(window.location.href.indexOf("/popupLogin2013")!=-1){
frameLoginSubmit(callback);
return;
}
var loginUrl = "/uc/loginService";
var uuid = $("#uuid").val();
var chkRememberMe = "";
if ($('#autoLogin').attr('checked')) {
chkRememberMe = "on";
} $.ajax({
url: loginUrl + "?uuid=" + uuid + "&" + location.search.substring(1) + "&r=" + Math.random()+"&version=2015",
type: "POST",
dataType: "text",
contentType: "application/x-www-form-urlencoded; charset=utf-8",
data: {
uuid:$('#uuid').val(),
eid:$('#eid').val(),
fp:$('#sessionId').val(),
_t:$('#token').val(),
loginType:$('#loginType').val(),
loginname:$('#loginname').val(),
nloginpwd:getEntryptPwd($('#nloginpwd').val()),
chkRememberMe:chkRememberMe,
authcode:$('#authcode').val(),
pubKey:$('#pubKey').val(),
sa_token:$('#sa_token').val(),
seqSid:window._jdtdmap_sessionId
},
error: function () {
showMesInfo("网络超时,请稍后再试","error");
},
success: function (result) {
if (result) {
var obj = eval(result);
if (obj.success) {
Util.Cookie.setALCookie();
var isIE = !-[1,];
if (isIE) {
var link = document.createElement("a");
link.href = obj.success;
link.style.display = 'none';
document.body.appendChild(link);
link.click();
} else {
window.location = obj.success;
}
return;
} if (obj.transfer) {
window.location = obj.transfer + window.location.search;
return;
}
if (obj.venture) {
window.location = "//safe.jd.com/dangerousVerify/index.action?username=" + obj.venture + "&ReturnUrl=" + encodeURI(obj.ventureRet) + "&p=" +obj.p+ "&t=" + new Date().getTime();
return;
}
if (obj.resetpwd) {
window.location = "//safe.jd.com/resetPwd/reset.action?username=" + obj.resetpwd;
return;
}
if (obj.rescue) {
window.location = obj.rescue;
return;
} if(obj._t){
$("#token").val(obj._t);
} if (obj.verifycode || obj.authcode1 || obj.authcode2 || obj.emptyAuthcode) {
$("#o-authcode").show();
}
$("#JD_Verification1").click();
if (obj.authcode2) {
callback(obj.authcode2,"error",["#authcode"]);
}
if (obj.username) {
initCountryCode(obj);
callback(obj.username,"error",["#loginname"]);
}
if (obj.pwd) {
initCountryCode(obj);
callback(obj.pwd,"error",["#nloginpwd"]);
clearPwd();
}
if (obj.emptyAuthcode) {
callback(obj.emptyAuthcode,"error",["#authcode"]);
}
}
var input=$('.item-error').eq(0).find('input');
var t=input.val();
input.val("").focus().val(t);
$("#loginsubmit").html("登&nbsp;&nbsp;&nbsp;&nbsp;录");
}
});
} function frameLoginSubmit(callback){
var uuid = $("#uuid").val();
var protocol = Util.Header.getProtocol();
var chkRememberMe = "";
if ($('#autoLogin').attr('checked')) {
chkRememberMe = "on";
} $.ajax({
type: "POST",
dataType: "text",
url: "../uc/loginService?nr=1&uuid=" + uuid + "&" + location.search.substring(1) + "&r=" + Math.random() + "&version=2015",
contentType: "application/x-www-form-urlencoded; charset=utf-8",
data: {
uuid:$('#uuid').val(),
eid:$('#eid').val(),
fp:$('#sessionId').val(),
_t:$('#token').val(),
loginType:$('#loginType').val(),
loginname:$('#loginname').val(),
nloginpwd:getEntryptPwd($('#nloginpwd').val()),
chkRememberMe:chkRememberMe,
authcode:$('#authcode').val(),
pubKey:$('#pubKey').val(),
sa_token:$('#sa_token').val(),
seqSid:window._jdtdmap_sessionId
},
error: function () {
showMesInfo("网络超时,请稍后再试","error");
},
success: function (result) {
if (result) {
var obj = eval(result);
if (obj.success || obj.transfer) {
Util.Cookie.setALCookie();
var relayUrl = protocol + '//passport.jd.com/relay/loginRelay.htm';
try{
docRef = document.referrer;
var regExp = /([\w-]+)\.(jd\.hk|jd360\.hk|yiyaojd\.com|baitiao\.com)/;
var match = docRef.match(regExp);
if(match != null && match.length>=3){
var ua = navigator.userAgent;
var isIE = (ua.indexOf('MSIE') >= 0 || ua.indexOf("Trident") >= 0);
var hkShortDomainEnable = window.popupConfig.hkShortDomainEnable;
if(isIE && match[2] == "jd.hk" && hkShortDomainEnable){
relayUrl = protocol + "//" + match[0] + "/relay/loginRelay.htm";
}else{
relayUrl = protocol + "//sso." + match[2] + "/popup/redirect";
}
}
}catch(e){
} if (obj.notnr) {
window.location.href=relayUrl;
return;
} try {
$.ajax({
type: "GET",
url: obj.success,
dataType: "jsonp",
timeout: 1000,
success: function (result) {
window.location.href=relayUrl;
return;
}
});
} catch (e) {
window.location.href=relayUrl;
return;
}
}
if (obj.venture) {
var parentRef="";
try{
parentRef = document.referrer;
}catch(e){
}
window.parent.location = protocol + "//safe.jd.com/dangerousVerify/index.action?username=" + obj.venture + "&ReturnUrl=" + encodeURI(parentRef) + "&p=" +obj.p+ "&t=" + new Date().getTime();
return;
}
if (obj.resetpwd) {
window.parent.location = protocol + "//safe.jd.com/resetPwd/reset.action?username=" + obj.resetpwd;
return;
}
if (obj.rescue) {
window.parent.location = obj.rescue;
return;
}
if(obj._t){
$("#token").val(obj._t);
} if (obj.verifycode || obj.authcode1 || obj.authcode2 || obj.emptyAuthcode) {
$("#o-authcode").show();
}
$("#JD_Verification1").click();
if (obj.authcode2) {
callback(obj.authcode2,"error",["#authcode"]);
}
if (obj.username) {
initCountryCode(obj);
callback(obj.username,"error",["#loginname"]);
}
if (obj.pwd) {
initCountryCode(obj);
callback(obj.pwd,"error",["#nloginpwd"]);
clearPwd();
}
if (obj.emptyAuthcode) {
callback(obj.emptyAuthcode,"error",["#authcode"]);
}
}
var input=$('.item-error').eq(0).find('input');
var t=input.val();
input.val("").focus().val(t);
$("#loginsubmit").html("登&nbsp;&nbsp;&nbsp;&nbsp;录");
}
});
} function showMesInfo(msg, type) {
$('.form>.msg-wrap').empty();
if (type == 'warn') {
var info = '<div class="msg-warn"><b></b>' + msg + '</div>';
$('.form>.msg-wrap').append(info);
}
if (type == 'error') {
var info = '<div class="msg-error"><b></b>' + msg + '</div>';
$('.form>.msg-wrap').append(info);
}
} /**
* 清除密码
*/
function clearPwd(){
$("#nloginpwd").val("");
$('#nloginpwd').siblings('.clear-btn').hide();
} function assemblyForm(){ }
/**
* 鼠标离开用户名
*/
$('#loginname').blur(function(){
rememberMeCheck();
});
window.loginSubmit=loginSubmit;
window.assemblyForm=assemblyForm;
window.showAuthCode=showAuthCode;
})();
CODE

<!DOCTYPE html>
<html>
<head>
<meta charset="GBK"/>
<meta http-equiv="X-UA-Compatible" content="IE=Edge"/>
<title>京东-欢迎登录</title>
<link rel="icon" href="//www.jd.com/favicon.ico"/>
<link type="text/css" rel="stylesheet"
href="//misc.360buyimg.com/user/passport/1.0.0/??/widget/base/base.css,widget/common-2016-1124/common-2016-1124.css,/widget/login-form-2016-1124/login-form-2016-1124.css,/widget/login-banner/login-banner.css,/widget/safe-step/safe-step.css,widget/foreign-number-layer-1130/foreign-number-layer-1130.css"
source="widget"/>
<script type="text/javascript" src="//misc.360buyimg.com/jdf/lib/jquery-1.6.4.js"></script>
<script type="text/javascript">
$(function () {
window.SysConfig = {
encryptInfo: true,
rememberMeShowEnable: false
};
});
</script>
</head>
<body>
<!-- SDK 登录 -->
<div class="w">
<div id="logo">
<a href="//www.jd.com/" clstag="pageclick|keycount|20150112ABD|45">
<img src="//misc.360buyimg.com/lib/img/e/logo-201305-b.png" alt="京东" width="170" height="60">
</a>
<b></b>
</div>
<a href="//surveys.jd.com/index.php?r=survey/index/sid/568245/lang/zh-Hans" target="_blank" class="q-link"><b></b>登录页面,调查问卷</a>
</div>
<div id="content">
<div class="login-wrap">
<div class="w">
<div class="login-form">
<div class="login-tab login-tab-l">
<a href="javascript:void(0)" clstag="pageclick|keycount|201607144|1"> 扫码登录</a>
</div>
<div class="login-tab login-tab-r">
<a href="javascript:void(0)" clstag="pageclick|keycount|201607144|2">账户登录</a>
</div>
<div class="login-box">
<div class="mt tab-h">
</div>
<div class="msg-wrap">
<div class="msg-error hide"><b></b></div>
</div>
<div class="mc">
<div class="form">
<form id="formlogin" method="post" onsubmit="return false;">
<input type="hidden" id="sa_token" name="sa_token" value="992-大写字母、数字"/>
<input type="hidden" id="uuid" name="uuid"
value="6af11588-4230-4897-9b26-321cb28e709d"/>
<input type="hidden" name="eid" id="eid" value="" class="hide"/>
<input type="hidden" name="fp" id="sessionId" value="" class="hide"/>
<input type="hidden" name="_t" id="token" value="_ntYpkKe" class="hide"/>
<input type="hidden" name="loginType" id="loginType" value="c" class="hide"/>
<input type="hidden" name="pubKey" id="pubKey" value="216-大写字母、数字、+、/" class="hide"/>
<input type="hidden" name="QCBQuufxss" value="TTLcR"/> <div class="item item-fore1">
<label for="loginname" class="login-label name-label"></label>
<input id="loginname" type="text" class="itxt" name="loginname" tabindex="1"
autocomplete="off"
placeholder="邮箱/用户名/已验证手机"/>
<span class="clear-btn"></span>
</div> <div id="entry" class="item item-fore2">
<label class="login-label pwd-label" for="nloginpwd"></label>
<input type="password" id="nloginpwd" name="nloginpwd" class="itxt itxt-error"
tabindex="2" autocomplete="off" placeholder="密码"/>
<span class="clear-btn"></span>
<span class="capslock"><b></b>大小写锁定已打开</span>
</div> <div id="o-authcode"
class="item item-vcode item-fore3 hide ">
<input id="authcode" type="text" class="itxt itxt02" name="authcode" tabindex="3">
<img id="JD_Verification1" class="verify-code"
src2="//authcode.jd.com/verify/image?a=1&amp;acid=7af11544-4550-4507-9b63-524cb28e508d&amp;uid=7af11544-4550-4507-9b63-524cb28e508d"
onclick="this.src= document.location.protocol +'//authcode.jd.com/verify/image?a=1&amp;acid=7af11544-4550-4507-9b63-524cb28e508d&amp;uid=7af11544-4550-4507-9b63-524cb28e508d&amp;yys='+new Date().getTime();$('#authcode').val('');"/>
<a href="javascript:void(0)" onclick="$('#JD_Verification1').click();">看不清换一张</a>
</div> <div class="item item-fore4">
<div class="safe">
<span>
</span>
<span class="forget-pw-safe">
<a href="/uc/links?tag=safe" class="" target="_blank"
clstag="pageclick|keycount|201607144|3">忘记密码</a>
</span>
</div>
</div> <div class="item item-fore5">
<div class="login-btn">
<a href="javascript:;" class="btn-img btn-entry" id="loginsubmit" tabindex="6"
clstag="pageclick|keycount|201607144|3">登&nbsp;&nbsp;&nbsp;&nbsp;录</a>
</div>
</div>
</form>
</div>
</div>
</div> <div class="qrcode-login">
<div class="mc">
<div class="qrcode-error-2016">
<div class="qrcode-error-mask">
</div>
<p class="err-cont">服务器出错</p>
<a href="javascript:void(0)" class="refresh-btn">刷新</a>
</div>
<div class="qrcode-main">
<div class="qrcode-img">
<img src="//img14.360buyimg.com/da/jfs/t559/51/841097244/15946/f4ff9e8/548faf09N1acc240e.png"
alt="">
</div>
<div class="qrcode-help" style="display: none; "></div>
</div>
<div class="qrcode-panel">
<ul>
<li class="fore1">
<span>打开</span>
<a href="/uc/links?tag=apps" target="_blank"
clstag="pageclick|keycount|201607144|9">
<span class="red">手机京东</span></a>
</li>
<li>扫描二维码</li>
</ul>
</div>
<div class="coagent qr-coagent" id="qrCoagent">
<ul>
<li><b></b><em>免输入</em></li>
<li><b class="faster"></b><em>更快&nbsp;</em></li>
<li><b class="more-safe"></b><em>更安全</em></li>
</ul>
</div>
</div>
</div>
<div class="coagent" id="kbCoagent">
<ul>
<li>
<b></b>
<a href="javascript:void(0)"
onclick="window.location='//qq.jd.com/new/qq/login.aspx'+window.location.search;return false;"
clstag="pageclick|keycount|201607144|6" class="pdl"><b
class="QQ-icon"></b><span>QQ</span></a>
<span class="line">|</span>
</li>
<li>
<a href="javascript:void(0)"
onclick="window.location='//qq.jd.com/new/wx/login.action'+window.location.search;return false;"
clstag="pageclick|keycount|201607144|7" class="pdl"><b
class="weixin-icon"></b><span>微信</span></a>
</li>
<li class="extra-r">
<div>
<div class="regist-link"><a
href="//reg.jd.com/reg/person?ReturnUrl=http%3A%2F%2Fwww.jd.com"
clstag="pageclick|keycount|201607144|8"
target="_blank"><b></b>立即注册</a></div>
</div>
</li>
</ul>
</div>
</div>
</div>
<div class="login-banner" clstag="pageclick|keycount|20150112ABD|46">
<div class="w">
<div id="banner-bg" class="i-inner"
>
</div>
</div>
</div>
</div>
</div>
<div class="w">
<div id="footer-2013">
<div class="links">
<a rel="nofollow" target="_blank" href="//www.jd.com/intro/about.aspx">
关于我们
</a>
|
<a rel="nofollow" target="_blank" href="//www.jd.com/contact/">
联系我们
</a>
|
<a rel="nofollow" target="_blank" href="//zhaopin.jd.com/">
人才招聘
</a>
|
<a rel="nofollow" target="_blank" href="//www.jd.com/contact/joinin.aspx">
商家入驻
</a>
|
<a rel="nofollow" target="_blank" href="//www.jd.com/intro/service.aspx">
广告服务
</a>
|
<a rel="nofollow" target="_blank" href="//app.jd.com/">
手机京东
</a>
|
<a target="_blank" href="//club.jd.com/links.aspx">
友情链接
</a>
|
<a target="_blank" href="//media.jd.com/">
销售联盟
</a>
|
<a href="//club.jd.com/" target="_blank">
京东社区
</a>
|
<a href="//gongyi.jd.com" target="_blank">
京东公益
</a>
|
<a target="_blank" href="//en.jd.com/" clstag="pageclick|keycount|20150112ABD|9">English Site</a>
</div>
<div class="copyright">
Copyright&nbsp;&copy;&nbsp;2004-2017&nbsp;&nbsp;京东JD.com&nbsp;版权所有
</div>
</div>
</div>
<script type="text/javascript" src="//misc.360buyimg.com/jdf/1.0.0/unit/base/1.0.0/base.js"></script>
<script type="text/javascript" src="/new/js/jsencrypt.min.js"></script>
<script type="text/javascript" src="/new/misc/js/login2016.js?v=201702221137"></script>
<script type="text/javascript" src="//misc.360buyimg.com/user/passport/1.0.0/js/login.index.2016-1130.js"
source="widget"></script> <script type="text/javascript"> ~function () {
var data = [{
src: "//img12.360buyimg.com/da/jfs/t4906/230/212513535/58511/85f3953d/58dce02dNe7f59c2a.jpg",
bgColor: "#22b39d",
weight: "4"
}, {
src: "//img13.360buyimg.com/da/jfs/t2749/276/1020747574/33213/870500f1/5731485aN1134b4f0.png",
bgColor: "#e93854",
weight: "4"
}, {
src: "//img30.360buyimg.com/da/jfs/t4522/358/1311178851/389232/dbd2d00c/58dc8175Ndcc4448b.jpg",
bgColor: "#0D0302",
weight: "4"
}];
var getRandom = function (arr) {
var _temp = 0, _random = 0, _weight, _newArr = [];
for (var i = 0; i < arr.length; i++) {
_weight = arr[i].weight ? parseInt(arr[i].weight) : 1;
_newArr[i] = [];
_newArr[i].push(_temp);
_temp += _weight;
_newArr[i].push(_temp);
}
_random = Math.ceil(_temp * Math.random());
for (var i = 0; i < _newArr.length; i++) {
if (_random > _newArr[i][0] && _random <= _newArr[i][1]) {
return arr[i];
}
}
};
var tpl = '<div class="login-banner" style="background-color: {bgColor}">\ <div class="w">\ <div id="banner-bg" clstag="pageclick|keycount|20150112ABD|46" class="i-inner" style="background: url({imgURI}) 0px 0px no-repeat;background-color: {bgColor}"></div>\ </div>\ </div>';
var bgData = getRandom(data);
var bannerHtml = tpl.replace(/{bgColor}/g, bgData.bgColor).replace(/{imgURI}/g, bgData.src);
$('.login-banner').replaceWith(bannerHtml);
}();</script>
<script type="text/javascript">
(function () {
var ja = document.createElement('script');
ja.type = 'text/javascript';
ja.async = true;
ja.src = ('https:' == document.location.protocol ? 'https://cscssl' : '//csc') + '.jd.com/wl.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(ja, s);
})();
</script> <script src="//payrisk.jd.com/js/td.js"></script>
<script>
$(function () {
getJdEid(function (eid, fpid) {
var eValue = eid;
var fpValue = fpid;
var ee = $("#eid").prop("value", eValue);
var fp = $("#sessionId").prop("value", fpValue);
});
});
</script> <script type="text/javascript">
var _jraq = _jraq || [];
_jraq.push(['account', 'UA-J2011-12']);
(function () {
var ja = document.createElement('script');
ja.type = 'text/javascript';
ja.async = true;
ja.src = ('https:' == document.location.protocol ? 'https://jrclick' : '//jrclick') + '.jd.com/wl.dev.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(ja, s);
})();
</script> <script type="text/javascript"
src="//seq.jd.com/jseqf.html?bizId=passport_jd_com_login_pc&platform=js&version=1"></script> <!-- SDK 登录 -->
</body>
</html>

PC京东登录页分析 curl的更多相关文章

  1. canvas-简单快速实现知乎登录页背景效果

    前言 打开知乎的登录页,就可以看到其背景有一个动效,看起来好像蛮不错的样子: 这个效果使用canvas是不难实现的,接下来就一步一步地讲解并实现这个效果. 分析 在动工之前先分析这个效果到底是如何运动 ...

  2. 基于React的PC网站前端架构分析

    代码地址如下:http://www.demodashi.com/demo/12252.html 本文适合对象 有过一定开发经验的初级前端工程师: 有过完整项目的开发经验,不论大小: 对node有所了解 ...

  3. Golang在京东列表页实践总结

    Golang在京东列表页实践总结 作者:张洪涛 10余年软件开发和设计经验,曾就职于搜狐.搜狗.前matrixjoy公司联合创始人.甘普科技CTO. 目前线上状态 基于搜索实现: 全量数据,搜索结果不 ...

  4. Jetpack Compose学习(1)——从登录页开始入门

    原文地址:Jetpack Compose学习(1)--从登录页开始入门 | Stars-One的杂货小窝 Jetpack Compose UI在前几天出了1.0正式版,之前一直还在观望,终于是出了正式 ...

  5. session过期,登录页被内嵌iframe的解决方案

    在登录页的js加上: if(window !=top){ top.location.href = location.href; } 就可以完美解决这个问题!

  6. Spring Security笔记:自定义登录页

    以下内容参考了 http://www.mkyong.com/spring-security/spring-security-form-login-example/ 接上回,在前面的Hello Worl ...

  7. 【SSO单点系列】(2):CAS4.0 登录页的个性化定制

    上一篇 [SSO单点系列](1):CAS环境的搭建介绍了CAS最简单环境的搭建,以及一个例子用来讲解CAS的一个最基础的用法. 今天主要是介绍如何对CAS登录页进行个性化定制.    一.开始 下图是 ...

  8. 【SSO单点系列】(3):CAS4.0 登录页验证码的添加

    2016.08.23 更新 注意:这个教程只适合4.0版本的,4.1以及以上的版本的已经不试用了, 后面几篇有人提到过 源码网盘链接更新了下 : 链接: http://pan.baidu.com/s/ ...

  9. 后台跳转到登录页嵌套在iframe的问题(MVC例)

    //首页 public ActionResult Index() { if (!Request.IsAuthenticated) //判断权限,没有登录就跳回登录页 {string url = Url ...

随机推荐

  1. Vue 中的生命周期和钩子函数

    生命周期: beforeCreate:el 和 data 并未初始化 (此方法不常用) created:完成了 data 数据的初始化,el的初始化未完成.用来发送ajax beforeMount:( ...

  2. CentOS6.x修改主机名,关闭防火墙

    一.centos默认主机名为localhost,不方便管理,此次,我修改为noi. 1.修改网络配置文件:/etc/sysconfig/network 首先,备份一下源文件,注意date命令和加号之间 ...

  3. printf函数对参数的计算顺序

    没想到啊,没想到: printf函数对参数的计算顺序是从右往左的! 我不禁想问一句,这么坑爹的事情,书里居然没有写过.还是我看书不仔细,没有找到?(回头,在自己翻翻那本c语言编程) 于是下面的程序结果 ...

  4. IoC容器Autofac学习笔记

    一.一个没有使用IoC的例子 IoC的全称是Inversion of Control,中文叫控制反转.要理解控制反转,可以看看非控制反转的一个例子. public class MPGMovieList ...

  5. Atitit.sql where条件表达式的原理  attilax概括

    Atitit.sql where条件表达式的原理  attilax概括 1. 数据查询接口sql api标准化1 2. Sql接口的问题2 2.1. 虽然sql是结构化的dsl,但是任然是编程语言类型 ...

  6. migrate的使用

    安装完yii2后,需要创建一张user表,这里用migrate创建 1.在dos窗口下,先cd到项目的目录,比如E:\>cd E:\Visual-AMP-x64\www\blog\blog 2. ...

  7. jquery为动态添加元素绑定点击事件

    on()方法添加的事件处理程序适用于当前及未来的元素(比如由脚本创建的新元素) $("#mainbody").on("click",".link&qu ...

  8. 关于MBR、GPT以及BIOS引导模式区分

    关于MBR.GPT.ESP.MSR.EFI.UEFI和WIN8中SECURE BOOT的基础知识: 1.MBR分区表:Master Boot Record,即硬盘主引导记录分区表,只支持容量在 2.1 ...

  9. Github 创建新分支

    一.clone Repository clone Github 上的Repository,如下: git clone git@github.com:FBing/design-patterns.git ...

  10. Python Excel 导入导出【转】

    一.安装xlrd模块 到python官网下载http://pypi.python.org/pypi/xlrd模块安装,前提是已经安装了python 环境. 二.使用介绍 1.导入模块 import x ...