懂视移动端 视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501
当前位置: 首页 - 手机 - 正文

怎么使用微信扫描二维码登录网页版微信

来源:懂视网 责编:小OO 时间:2020-04-16 15:56:37
导读怎么使用微信扫描二维码登录网页版微信,jsp+spring+struts2+mybatis:模仿微信pc网页版扫码登录使用js代码生成目前,很多软件都可以使用第三方账号登入。微信可谓是开辟新径,微信则使用二维码扫描登录。如何使用微信扫描二维码登录网页版微信?方法首先,在桌面上找到360浏览器图标。打开百度,搜索天天模拟器,进入天天模拟器官网点击官网里面的”立即下载“,跳出“新建下载任鼠标右击,找

jsp+spring+struts2+mybatis:模仿微信pc网页版扫码登录使用js代码生成

目前,很多软件都可以使用第三方账号登入。微信可谓是开辟新径,微信则使用二维码扫描登录。如何使用微信扫描二维码登录网页版微信?

方法

首先,在桌面上找到360浏览器图标。

打开百度,搜索天天模拟器,进入天天模拟器官网点击官网里面的”立即下载“,跳出“新建下载任

鼠标右击,找到“打开”,鼠标单击一下进入。

1、手机登录自己的私人微信号;2、电脑浏览器打开微信网页版登录页面;3、打开手机微信上的“扫

进入网页后在搜索栏中输入“微信网页版”后,点击“搜索”。

告诉你个十分管用的方法,我的是2.7.0,版本有点老,不过好用。首先要至少有两个图,其中一个是你

在出来的选项中,选择带有“官网”的“微信网页版”,鼠标单击进入。

直接登录微信网页版地址:wx.qq.com,会出现一个二维码。然后,用手机登录微信后,在微信页面的“

此时网页页面会出现一个二维码图案,这时需要使用手机进行扫描。

在电脑上登上wx.qq.com之后用手机扫一下屏幕上的二维码即可登录微信网页版。具体可看图。1.

扫描完成后,你的微信头像会显示出来,然后需要在手机上确认登录。

简单说,就是二维码包含了你的浏览器sessionid,可以认为是浏览器的标识符。扫描以后发个服务

最后可以看见成功登录了网页版微信,你可以根据需要发送文件或者和好友聊天了。

如果你是第一次登入网页版微信,必须扫描二维码,这样才能确定你是在哪一台电脑上登入。同一台电脑第二次登

扩展阅读,以下内容您可能还感兴趣。

如何使用java实现二维码扫描登录微信网页版(微信端)?

jsp+spring+struts2+mybatis:

模仿微信pc网页版扫码登录

使用js代码生成qrcode二维码减轻服务器压力

js循环请求服务端,判断是否qrcode被扫

二维码超时失效功能

二维码被扫成功登录,服务端产生sessionId,传到页面使用js保存cookie

多线程

### 生成qrcode相关js jquery.qrcode.js - ### 代码 “

请使用手机扫码

//生成二维码 

!function(){ 

var uuid = (“#uuid”).val();

var content;

content = “……….do?uuid=”+uuid;

//console.dir(content);(‘.pc_qr_code’).qrcode({ 

render:”canvas”, 

width:200, 

height:200, 

correctLevel:0, 

text:content, 

background:”#ffffff”, 

foreground:”black”, 

src:”/logo.png” 

}); 

setCookie(“sid”, 123, -1*60*60*1000); 

keepPool();//自动循环调用 

}();

   function keepPool(){

       var uuid = $("#uuid").val();

       $.get(ctx+"/web/login/pool.do",{uuid:uuid,},function(msg){//如果放入一个不存在的网址怎么办?

           //console.log(msg);

           if(msg.successFlag == '1'){

               $("#result").html("扫码成功");

               setCookie(msg.data.cname, msg.data.cvalue, 3*60*60*1000);

               //alert("将跳转...");

               window.location.href = ctx +"/webstage/login/success.do";

           }else if(msg.successFlag == '0'){

               $("#result").html("该二维码已经失效,请重新获取");

           }else{

               keepPool();

           }

       });

   }

   //设置cookie

   function setCookie(cname, cvalue, expireTime) {

    var d = new Date();

    d.setTime(d.getTime() + expireTime);//设置过期时间

    var expires = "expires="+d.toUTCString();

    var path = "path=/"

    document.cookie = cname + "=" + cvalue + "; " + expires + "; " + path;

   }

java代码

//二维码首页public String index() {        try {

           uuid = UUID.randomUUID().toString();            super.getRequest().setAttribute("uuid", uuid);

           ScanPool pool = new ScanPool();

           pool.setCreateTime(System.currentTimeMillis());

           Map<String, ScanPool> map = new HashMap<String, ScanPool>(1);

           map.put(uuid, pool);

           PoolCache.cacheMap.put(uuid, pool);

           pool = null;

       } catch (Exception e) {

           Log4jUtil.CommonLog.error("pc生成二维码登录", e);

       }        return "index";

   }//判断二维码是否被扫描public void pool() {

       DataResultInfo result = null;

       System.out.println("检测[   " + uuid + "   ]是否登录");

       ScanPool pool = null;

       if(MapUtils.isNotEmpty(PoolCache.cacheMap)) pool = PoolCache.cacheMap.get(uuid);        try {            if (pool == null) {                // 扫码超时,进线程休眠

               result = DataResultInfo.getInstance().failure();

               result.setSuccessFlag(CommonConstant.Zero);

               result.setExtension(CommonConstant.Zero, "该二维码已经失效,请重新获取");

               Thread.sleep(10 * 1000L);

           } else {                // 使用计时器,固定时间后不再等待扫描结果--防止页面访问超时

               new Thread(new ScanCounter(uuid, pool)).start();                boolean scanFlag = pool.getScanStatus(); //这里得到的ScanPool(时间靠前)和用户使用手机扫码后得到的不是一个,用户扫码后又重新更新了ScanPool对象,并重新放入了redis中,,所以这里要等待上面的计时器走完,才能获得最新的ScanPool

               if (scanFlag) {

                   result = DataResultInfo.getSuccess();                    // 根据e69da5e887aae799bee5baa6e997aee7ad9431333363396465uuid从redis中获取pool对象,得到对应的sessionId,返给页面,通过js存cookie中

                   JSONObject jsonObj = new JSONObject();

                   jsonObj.put("cname", CookieConstant.SESSION_KEY);

                   jsonObj.put("cvalue", pool.getSession());

                   result.setData(jsonObj);

               } else {

                   result = DataResultInfo.getInstance().failure();

                   result.setMessage("等待扫描");

               }

           }

       } catch (Exception e) {

           e.printStackTrace();

       }

       sendJsonMessage(result);

   }//手机扫码接口(以id和token作为用户身份登录)

public String phoneScanLogin() {

       DataResultInfo result = null;

        ScanPool pool = null;

        if(MapUtils.isNotEmpty(PoolCache.cacheMap)) pool = PoolCache.cacheMap.get(uuid);        try {            if (pool == null) {

               result = DataResultInfo.getInstance().failure();

               result.setMessage("该二维码已经失效,请重新获取");

           } else {                if (StringUtils.isNotEmpty(id) && StringUtils.isNotEmpty(token)) {                    //根据id和token查询后台,获取用户信息userBean

                   String redisToken = redisUtil.getRedis(RedisKeyConstant.APP_TOKEN+userId);                    if(redisToken != null && redisToken.equals(token)){

                  UserBean userBean = userService.findByUserId(Long.valueOf(userId));                       if (userBean != null) {

                           String sessionId = SessionConstant.SESSION_ID_PRE

                                   + FormatUtils.password(userBean.getId()

                                           .toString());

                           Map<String, String> cookieSession = new HashMap<String, String>();

                           cookieSession

                           .put(CookieConstant.SESSION_KEY, sessionId);                            // WrCookie.writeCookie(getResponse(),cookieSession);

                           // 添加用户信息到redis

                           boolean re = redisUtil.addUserInfo( RedisKeyConstant.SESSION + sessionId, BeanUtils.toBean(userBean, UserInfo.class));

                           getSession().setAttribute( SessionConstant.USER_INFO_WEB, BeanUtils.toBean(userBean, UserInfo.class));

                           getSession().setAttribute( DomainConstant.USER_CENTER_KEY, DomainConstant.USER_CENTER);

                           pool.setSession(sessionId);

                           pool.scanSuccess();

                       }else{

                           result = DataResultInfo.getInstance().failure();

                           result.setMessage("用户信息获取异常!请稍后再试");

                       }

                   } else {

                       result = DataResultInfo.getInstance().failure();

                       result.setExtension("11", "用户身份信息失效,请重新登录!");

                   }

               } else {

                   result = DataResultInfo.getInstance().failure();

                   result.setMessage("请求参数有误!");                    return "error";

               }                // 不能清除,否则conn方法得不到pool对象,不会进入线程休眠

               // System.out.println("清除扫描过的uuid");

               //PoolCache.cacheMap.remove(uuid);

           }

       } catch (Exception e) {

           Log4jUtil.CommonLog.error("手机扫码 后访问 异常", e);

       }

       sendJsonMessage(result);        return null;

   }//扫码成功跳转页

public String success() {

       String sessionId = WrCookie.getCookie(super.getRequest(), CookieConstant.SESSION_KEY);

       UserInfo userInfo = redisUtil.getUserInfo(RedisKeyConstant.SESSION + sessionId);       super.getRequest().setAttribute(SessionConstant.USER_INFO_WEB, userInfo);        return SUCCESS;

   }//线程判断二维码是否超时class ScanCounter implements Runnable {    public Long timeout = 30 * 1000L; //超时时长

   // 传入的对象

   private String uuid;    private ScanPool scanPool;    public ScanCounter(String p, ScanPool scanPool) {

       uuid = p;        this.scanPool = scanPool;

   }    @Override

   public void run() {        try {

           Thread.sleep(timeout);

       } catch (InterruptedException e) {

           e.printStackTrace();

       }

       notifyPool(uuid, scanPool);

   }    public synchronized void notifyPool(String uuid, ScanPool scanPool) {        if (scanPool != null) scanPool.notifyPool();

   }    public String getUuid() {        return uuid;

   }    public void setUuid(String uuid) {        this.uuid = uuid;

   }    public ScanPool getScanPool() {        return scanPool;

   }    public void setScanPool(ScanPool scanPool) {        this.scanPool = scanPool;

   }

}123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166

ScanPool.java(存放uuid的bean)

public class ScanPool implements Serializable{

   /**

    * @Fields serialVersionUID : TODO(用一句话描述这个变量表示什么)

    */

   private static final long serialVersionUID = -9117921544228636689L;    private Object session ;    //创建时间  

   private Long createTime = System.currentTimeMillis();  

   //登录状态  

   private boolean scanFlag = false;  

   public boolean isScan(){  

       return scanFlag;  

   }  

   public void setScan(boolean scanFlag){  

       this.scanFlag = scanFlag;

   }

   /**

    * 获取扫描状态,如果还没有扫描,则等待固定秒数

    * @param wiatSecond 需要等待的秒数

    * @return

    */  

   public synchronized boolean getScanStatus(){  

       try  

       {  

           if(!isScan()){ //如果还未扫描,则等待  

               this.wait();  

           }  

           if (isScan())  

           {   System.err.println("手机扫描完成设置getScanStatus..true...........");                return true;  

           }  

       } catch (InterruptedException e)  

       {  

           e.printStackTrace();  

       }  

       return false;  

   }  

   /**

    * 扫码之后设置扫码状态

    * @param token

    * @param id

    */  

   public synchronized void scanSuccess(){  

       try  

       {  System.err.println("手机扫描完成setScan(true)....同时释放notifyAll(手机扫码时,根据uuid获得的scanpool对象)");

           setScan(true);

           this.notifyAll();  

       } catch (Exception e)  

       {  

           // TODO Auto-generated catch block  

           e.printStackTrace();  

       }  

   }  

   public synchronized void notifyPool(){  

       try  

       {  

           this.notifyAll();  

       } catch (Exception e)  

       {  

           // TODO Auto-generated catch block  

           e.printStackTrace();  

       }  

   }  

   /***********************************************/

   public Long getCreateTime()  

   {  

       return createTime;  

   }  

   public void setCreateTime(Long createTime)  

   {  

       this.createTime = createTime;  

   }    public Object getSession() {        return session;

   }    public void setSession(Object session) {        this.session = session;

   }

电脑版微信不用扫描二维码怎么登录

1、需要在电脑中下载安装“安卓模拟器”和“微信安卓版”,安卓模拟器大家百度搜索一下,可以找到很多。下面我们这里使用的是“东东手游助手”,在电脑中打开下载安装的【东东手游助手】,然后在zhidao【我的应用】中,点击【安装本地应用】,然后打开下载的【微信安卓版】进行安装;

2、在安卓模拟器中安装微信安卓版成功后,就可以点击【启动】打开微信了;

3、接下来会弹出微信登陆界面,登陆界面不同微信网页版,而是很手机版回基本相同,我们直接点击左下角的【登陆】;

4、再接下来我们看到的默认是手机号登陆,无需使用二维码。如果手机在身答边,可以接受验证码的话,可以直接使用手机号登陆,然后获取短信验证完成登陆。如果手机不在身边或者丢了,我们还可以点击下方的【使用其他方式登陆】。

微信登录电脑版不扫二维码怎么登陆

打开百度,搜索天天模拟器,进入天天模拟器官网

点击官网里面的”百立即下载“,跳出“新建下载任务”框。

点击“新建下载任务”框里面的“浏览”选择把文件下载到电度脑的哪一个地方

《一般默认的都是下载到电脑C盘,但是下载到C盘会很占电脑,导致电脑反应变迟钝问,所以建议下载到电脑的其他盘里面,D、E、F盘都可以》

文件下载好后,点击“打开文件夹”就可以看见天天模拟器的图标

咱们再用鼠标左键双击图标,出现如图所示,点击“运行(答R)

点击“运行”出现如图所示的框,点击”开始下载“

如果出现如图类似的东西,请点击右下角的“继续版下载”,(如果没有请忽权略这一步)

8

下载完成后,再按照提示完成操作,桌面就会有“天天模拟器的图标”了,双击图标

微信网页版怎么用账号登陆

1、手机登录自己的私人微信号;

2、电脑浏览来器打开微信网页版登录页面;

3、打开手机微信上的“扫一扫”功能,对准网页版二维码扫描;

4、扫描成功,请到手机微信上确认登录源网页版,确认好了之后,网页版就会自动加载你微信信息;

5、登录成功,可以直接向好友或者微信群发送消息zhidao。

温馨提醒:微信网页版没有朋友圈功能,而且对话列表不会显示公众号发来的信息。

电脑版微信怎么扫描二维码

告诉你个十分管用的方法,

我的来是2.7.0,版本有点老,不过好用。首先要至少有两个图,其中一个是你要识别的图,另一个随源便。把这两个图分开发给任意一个人或微信传输助手。百你要点开没用的那个图,也就是随便找的那个图。点开后,右键,有四个选项,然后,移动鼠标度,不要管这四个东西,鼠标移动到图片右侧或左侧(这个要根据你发图知片的顺序,反正是要点到要识别的图),点击切换上一张或下一张,就来到了要识别道的图了。离成功仅差一步:右键,点开你就有惊喜。

望采纳,谢谢!

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。TEL:0731-84117792 E-MAIL:11247931@qq.com

  • 热门焦点

最新推荐

猜你喜欢

热门推荐

windows7电脑系统32位和64位区别 如何用电脑录像 耳机电流声该如何消除 如何给WPS文档添加目录 今日头条电脑版下载如何下载 怎么在wps里面插入方框里打钩符号 键盘按键错乱如何解决 wps中流程图如何制作 教你怎么完美将excel表格粘贴到word中 WPS表格中乘积方法 qq申诉失败如何处理 如何解决电脑连接手机出现设备驱动安装失败 Photoshop技巧:【2】如何抠头发 手机qq该如何一次性发消息给多位好友 电脑mac地址该如何查 网页字体变小了如何解决 暴风影音如何截取视频片段 怎么查询企业营业执照年检是否公示成功 如何查找ip地址 微信群怎么找?怎么加入微信群 win10怎么更改时间、更改时区 如何去除cad中的bak文件 怎么修改文件图标 excel表格怎么插入页眉页脚 ie 浏览器点击没反应且启动不起来如何解决 手把手教你用excel2010做柏拉图(pareto) word打不开发送错误报告如何解决 电脑卡、反应速度慢的应对技巧 如何查看网站流量 该如何在excel表格中划线? 如何取消在京东绑定的手机号码 教你删除office激活残留注册表解决0xC004F074 MyEclipse 插件svn 安装教程 百度知道问答推广如何做 怎么查找网站ip地址 新浪微博怎么查看评论过的微博 电脑屏幕怎么调亮 qq登陆后图标不见了找不到,QQ登陆后不显示图标 菜鸟驿站代收服务是什么?代收收费吗? 怎么设置微信朋友圈权限
Top