精华内容
下载资源
问答
  • 简单来说就是找到登录成功or失败这两个界面的不同之处,进而做出判断。

      我们以模拟登录华北电力大学内网为例,具体模拟登录过程请见:JSoup模拟登录网站(以校园内网为例)

    JSoup模拟登录代码为:

    package EDM;
    
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    
    import org.jsoup.Connection;
    import org.jsoup.Connection.Method;
    import org.jsoup.Connection.Response;
    import org.jsoup.Jsoup;
    import org.jsoup.nodes.Document;
    import org.jsoup.nodes.Element;
    
    /** 
     * @ClassName: login_final
     * @description: JSoup_Login
     * @author: KI
     * @Date: 2020年8月22日 下午1:16:07
     */
    
    public class Login_Test {
        
        public static void main(String[] args) throws Exception {
     
            Connection connection = Jsoup.connect("https://webvpn.ncepu.edu.cn/users/sign_in");
            connection.header("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.61 Safari/537.36");
            Response res = connection.execute();
            Document d = Jsoup.parse(res.body()); 
            List<Element> elements = d.select("form");
     
            Map<String, String> datas = new HashMap<>();
            for (Element element : elements.get(0).getAllElements()) {
                // 设置用户名,这里不是login而是user[login]
                if (element.attr("name").equals("user[login]")) {
                    element.attr("value", "************");
                }
                if (element.attr("name").equals("user[password]")) {
                    element.attr("value", "******");
                }
                if (element.attr("name").length() > 0) {
                    datas.put(element.attr("name"), element.attr("value"));
                }
            }
            //System.out.println(datas);
            Connection connection2 = Jsoup.connect("https://webvpn.ncepu.edu.cn/users/sign_in");
            connection2.header("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.61 Safari/537.36");
            Response response = connection2.ignoreContentType(true).followRedirects(true).method(Method.POST)
                                    .data(datas).cookies(res.cookies()).execute();
            //show
            System.out.println(response.body());
            Map<String, String> map = response.cookies();
            for (String s : map.keySet()) {
                System.out.println(s + " : " + map.get(s));
            }  
        }
    }
    
    
    

    判断的关键在response.body()里面!我们观察登录成功后的页面:
    在这里插入图片描述
    网页中有"北京校区业务系统"这一字符串,若登录失败,body还是原来的界面:
    在这里插入图片描述
    在这个界面里搜索"北京校区业务系统"是找不到的,进而就可以判断登录是否成功:

    if(!body.contains("北京校区业务系统")) {
        return false;
    }
    return true;
    

      当然这个只是最简单的一种办法,又比如说某些网页在登录失败后,网页中的某个标签内容不再是null,而是什么"密码错误,请重新登录!"等内容。 比如这个界面:
    在这里插入图片描述
    登录失败时,网页中id为tips的这个标签的内容会变成"用户名或密码输入不正确,请重新输入!",我们可以利用这一点做出判断:

    document = Jsoup.parse(response.body());
    if(document.getElementById("tips") == null){
        return true;
    }else{
        System.out.println(document.getElementById("tips").text());
        return false;
    }
    
    展开全文
  • 登录成功页面主要实现了,更换头像和读登录的用户信息。 我是直接引用的官网地址做的(&lt;script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"&gt;&lt;/script&gt;),...

    本篇是该系列(vue.js写多账号登录、注册、登录成功页面)的最后一篇了,想看登录,注册,请看上篇and 上上篇。登录成功页面主要实现了,更换头像和读登录的用户信息。

    我是直接引用的官网地址做的(<script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"></script>),没有下。


    首先,来看一下效果图:


    更换头像,从本地选取: 



    **下面准备开始做了(这是手动分界线~)**


    登录成功页面的html部分:

    <div id="app">
            <h2 style="margin-bottom: 20px;">用户详细信息</h2>
            <!--头像-->
        <div >
            <input type="file" @change="upimgg" id="btn_img" style="display: none;">
            <img :src="imgurl || 'images/logo.png'" @click="upimg"style=" width: 117px;height: 100px;cursor: pointer;">
        </div>
        <!-- 信息 -->
        <div id="msg">
            <ul>
                <li v-for="(item,index) in items" style="margin-left: 10px;">
                {{index | myfilter}}:{{item}}
    
            </ul> 
         </div>   
    </div> 

    登录成功页面的css部分:

     body{background: url(images/2.jpg) no-repeat;background-size: 100%; }
            ul{list-style: none;/*writing-mode: vertical-rl;*/}
            #app{position: relative;left: 373px;top:80px;}
            #msg{position: absolute;left:-50px;font-family: '仿宋';font-size: 20px;}

    登录成功页面的vue.js部分:

    //自定义过滤器 
    Vue.filter('myfilter',function (index) {
            switch(index){
                case 'username':
                return '用户名';
                case 'password':
                return '密码';
                case 'number':
                return '手机号';
                case 'name':
                return '真实姓名';
                case 'address':
                return '家庭住址';
    
            }
            return index;
            
        })
        var vm=new Vue({
            el:'#app',
            data:{
                items:JSON.parse(localStorage.getItem("userInfo")),
                imgurl:''
            },
            methods:{
                upimg(){
                var url=document.getElementById("btn_img").click();
               /* console.log(this.items[0])//取数组中的第一组数据*/
                },
                upimgg(){
                var imgFile = document.getElementById("btn_img");
                this.imgurl = window.URL.createObjectURL(imgFile.files[0]);
                console.log(this.imgurl)
            }
        },
       })

    三篇写完了,按顺序看效果最佳~~

    展开全文
  • 项目存在不同的子系统,需要根据不同的登录路径,登录成功后跳转不同的登录页面。 2.总体思路 将点击的路径记录到session中,登录成功后获取路径进行跳转 3.代码 目的是获得登录时的路径,保存到session中 ...

    1.需求

    项目存在不同的子系统,需要根据不同的登录路径,登录成功后跳转不同的登录页面。

    2.总体思路

    将点击的路径记录到session中,登录成功后获取路径进行跳转

     

    3.代码

    目的是获得登录时的路径,保存到session中

    public class CasAuthenticationRedirectextends extends CasAuthenticationEntryPoint {
    
        private static final Logger logger = LoggerFactory.getLogger(CasAuthenticationRedirectextends.class);
    
        private String serviceUrlBak=null;
    
        @Override
        protected String createServiceUrl(final HttpServletRequest request, final HttpServletResponse response) {
            if(serviceUrlBak==null){
                serviceUrlBak=getServiceProperties().getService();
            }else{
                String ctx=request.getContextPath();
                String requestURI=request.getRequestURI();
                requestURI=requestURI.substring(requestURI.indexOf(ctx)+ctx.length(),requestURI.length());
                String sessionid = request.getSession().getId();
                request.getSession().setAttribute(sessionid,requestURI);
            }
                return super.createServiceUrl(request, response);
        }
    
    }

     

    登录成功会跳转到给定的路径中

    public class CmsAuthenticationSuccessHandler extends SimpleUrlAuthenticationSuccessHandler {
    

    private List<String> listUrlString = new ArrayList<>();

    @Override
    protected String determineTargetUrl(HttpServletRequest request, HttpServletResponse response) {
    //此方法获得跳转路径
        String defaultTargetUrl = request.getSession().getAttribute(request.getSession().getId()).toString();
        if (listUrlString.size() == 0) {
    //获得所有子系统
    //TODO 需要补充,否则登录成功会跳转最后退出时候记录的路径,而退出是路径不一定正常,例如请缓存退出时候,
    //点击跳转不一定跳转到那了,如果都没有匹配给一个默认路径即首页
            List<Dictionary> dictionaries =getAllSonSystem();
            for (Dictionary dictionary : dictionaries) {
                listUrlString.add("/system/" + dictionary.getDicName());
            }
        }
        if (listUrlString.contains(defaultTargetUrl) || "/fwdt/system/main".equals(defaultTargetUrl)) {
            return defaultTargetUrl;
        }
        return "/system";
    }
    }
    展开全文
  • 在用户登录成功的时候,首页要显示用户名,把用户名存储在浏览器中 在点击退出的时候,要消除用户名,把用户名存储信息删除 应用的技术 jquery的localStorage技术+模块的隐藏和显示 填写用户登录信息,点击...

    需求说明

    网站开发过程中,最常见的就是用户的登录和退出

    在用户登录成功的时候,首页要显示用户名,把用户名存储在浏览器中

    在点击退出的时候,要消除用户名,把用户名存储信息删除


    应用的技术

    jquery的localStorage技术+模块的隐藏和显示


    填写用户登录信息,点击登录触发js事件

    登录成功的话,就会把用户名和密码永久存储

    //用户登录
    function ulogin(){
    	//获取用户名和密码,登录成功以后,把用户名存储在session里面,然后显示在首页里面
    	var username=$("#uusername").val();
    	var password=$("#password").val();
    	$.ajax({
    		method : 'post',
    		url : "http://localhost:8080/LawerSys/user_l.action",
    		dataType : "text",
    		data : {
    			username : username,
    			password : password
    		},
    		success : function(ret) {
    			//提示注册成功
    			if(ret=="success"){
    				//关闭模态框
    				 $("#close_lo").click(); 
    				 //把用户名密码存储在session里面,首页显示用户名称
    				 localStorage.setItem("username",username);	
    				 load_data();
    			}else{
    				alert("用户名或者密码输入错误,请重新输入");
    				$("#password").val('');
    			}
    			
    			 
    		},
    	})	
    }

     在首页刚加载的时候,就开始判断,如果浏览器里面有存储信息的话,就显示用户名,不然的话,先显示游客状态

    没有登录的时候

    有用户名的时候

     

     html代码

      <body onload="load_data()">

    js代码

    //页面刚加载的时候,开始判断,如果有用户名,就显示在页面上,如果没有用户名的话,就显示登录名称
    function load_data(){
    	 var theme=localStorage.getItem("username");
    	 if(theme==null||theme==""){
    		$("#cue").show(); 
    		 $("#uname").html('');
    	 }else{
    		 $("#cue").hide();  
    		 $("#uname").html(theme);
    	 }
    }
    //页面刚加载的时候,开始判断,如果有用户名,就显示在页面上,如果没有用户名的话,就显示登录名称

    退出

    html代码

                     <button type="button"  class="btn btn-danger" onclick="exitu()">退出</button> 

    js代码

    //退出登录
    function exitu(){
    	localStorage.removeItem("username"); 
    	//刷新部分
    	load_data();
    }
    //退出登录

    根据状态来决定要显示什么内容

    //页面刚加载的时候,开始判断,如果有用户名,就显示在页面上,如果没有用户名的话,就显示登录名称
    function load_data(){
    	 var theme=localStorage.getItem("username");
    	 if(theme==null||theme==""){
    		$("#cue").show(); 
    		 $("#uname").html('');
    	 }else{
    		 $("#cue").hide();  
    		 $("#uname").html(theme);
    	 }
    }
    //页面刚加载的时候,开始判断,如果有用户名,就显示在页面上,如果没有用户名的话,就显示登录名称

     

    展开全文
  • 获取登录成功的token

    万次阅读 2017-12-11 14:37:47
    项目中是要用到账号登录的,登录成功后,很多网络请求都需要带上token信息,所以需要在登录成功是获取Token信息
  • 登录成功不跳转的问题

    千次阅读 2019-07-27 15:22:29
    一般而言,登录成功后页面会进行跳转,但我最进遇到一个问题,会导致原应该进行跳转的登录,在成功输入完账号密码以及验证码后,点击登录按钮,弹出登录成功的提示框,点击确定后,却没有跳转到主页面。如下图 出现...
  • 关于shiro 登录成功返回到登录前访问的页面 登录成功后 不管什么时候登录都跳转到xml里配置指定的成功页面?
  • spring security 默认情况下登录成功会跳转到引发登录的请求上去,但是有些登录并不是同步访问的,而是ajax异步请求来访问登录,那么前端希望拿到的是登录用户的用户信息。 二、自定义登录成功和登录失败的返回方式...
  • 有好几位小伙伴小伙伴曾向松哥求助过这个问题。 一开始我觉得这可能是一个小...如果使用了 Spring Security,当我们登录成功后,可以通过如下方式获取到当前登录用户信息: SecurityContextHolder.getContext()....
  • 易语言大漠如何判断游戏登录成功

    千次阅读 2020-06-16 10:41:56
    如何判断游戏进入成功界面,剑侠情缘这款游戏登录成功后有一些活动推送,一些消息窗口,而这些窗口几乎同时出现,问题是有的账号并不出现,所以这里不能使用循环,否则无法判断退出循环,只能使用计次循环,感觉游戏...
  • spring security登录成功后跳转回登录前的页面 我刚好碰到了这么一个需求,正好自己也刚开始学spring security,但是我百度了一下,发现都讲的好麻烦,其实大概了解完之后,亲自实践一下发现,操作非常简单。 需求...
  • 比如我访问系统http://127.0.0.1/CasClient/abc.jsp,此时会定位到http://127.0.0.1/CasServer/login?service=http://127.0.0.1/CasClient/,这个时候abc.jsp丢失了,登录成功后直接返回到了...而不是客户端...
  • 一步一步摸索、查找资源,最后实现登录界面,登录成功后跳转到首页,从我的界面退出登录,这个过程涉及到了:Widgets的使用(TextField、RaisedButton、SizedBox、Row……)、路由、交互……等相关知识,代码有相应...
  • cas服务端登录成功后始终显示登录界面,切换用户,刷新客户端请求切换相应用户信息。
  • C#登录成功提示和登录成功后进入新的窗口界面代码: private void button3_Click(object sender, EventArgs e)  {    if (comboBox1.Text == "" && textBox1.Text == "")   {  
  • 登录成功页面去下一篇。 我是直接引用的官网地址做的(&lt;script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"&gt;&lt;/script&gt;),没有下。 首先,来看看效果图...
  • 如果跳转到登录界面登录成功后,怎样才能返回到登录之前的界面呢?很简单,我们在代码部分中添加一部分很少的代码即可。在从一个页面跳转到登录界面之前的代码,我们用session保存当前界面的url信息,在跳转到登录...
  • 编写3个页面,实现登录页面login.jsp,在其中输入用户名,密码,发送到登录验证页面loginCL.jsp,验证登录成功,在success.jsp页面显示成功提示、打印出相关信息,验证登录失败,返回login.jsp页面,在login.jsp页面...
  • 最近项目要加一个微信登录的功能,发现登录成功后进入WXEntryActivity界面,这个界面是微信来处理接受登录,分享等结果的。关闭的时候this.finish();界面闪烁,虽然不影响功能,但看起来狠辣眼,然后我就想是不是...
  • 第8章 登录功能实现-登录成功跳转主页面 8.1 涉及的技术知识点 Session会话 Cookie JSTL标签 8.2 Cookie HTTP是无状态协议,服务器不能记录浏览器的访问状态,也就是说服务器不能区分中两次请求是否由一个客户端...
  • 登录成功后跳回到原来页面

    千次阅读 2018-05-16 20:21:26
    应用场景:一般网页游客和登录用户看到的内容是有区别的,如果一个未登录的用户在看到登录提示后跳转到登录界面登录,那么登录成功后怎么返回到该页面呢?写这篇博客是因为我自己把解决问题的方向想偏了,本来实现是...
  • 为什么登录界面的Url是****/loginaction.action,登录成功后的页面也是****/loginaction.action?前后url一样,这样我模拟登陆怎么判断是否登录成功了呢 求详解
  • Android通过Http连接MySQL实现登录,如何返回键值对,判断登录成功
  • 用户登录成功后重新获取Session

    千次阅读 2018-04-15 11:36:46
    漏洞修复:Session会话登录前后无变化问题这个漏洞意思是说用户登录系统前后Session变化,就是JSESSIONID没有改变所以要在用户登录成功后在Filter(拦截器)或者登录Action里加入以下代码:HttpServletRequest ...
  • iframe显示null登录成功

    2013-12-02 05:42:38
    *** ...打开这个html文件,显示 null登录成功,但是把src里面的换成"http://www.baidu.com"就可以正常显示,不知道怎么解决?? 上面的src的内容,直接输入浏览器地址栏是可以显示界面的。
  • springBoot + shiro + cas实现单点登录退出时,登录成功,但是退出失败,cas服务器端退出后,cas客户端依然是登录状态,请问该怎么修改,网上百度了不知道多少次了,都是同样的解决方案,所以并没有用。请求大神帮助
  • Shiro集成CAS登录成功跳转地址问题

    千次阅读 2017-08-03 15:54:59
    Shiro集成CAS登录成功跳转地址问题

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 42,029
精华内容 16,811
关键字:

登录成功