微信怎么在电脑上登录 微信电脑登陆不用微信二维码登录电脑方法

微信电脑网页二维码扫描登陆简单实现_西西软件资讯
西西软件园多重安全检测下载网站、值得信赖的软件下载站!
→ 微信电脑网页二维码扫描登陆简单实现
V4.5 安卓版
类型:商务办公大小:3.0M语言:中文 评分:10.0
看那个电脑端的扫描登录看起来叼叼哒,找了一篇文章了解一下具体的实现思路和过程,看了牛人的分析后,发现实现起来也不是很难,这里我就简单的实现了一下。可能功能和流畅度没有做的好,具体是我对前端不是很了解。  好了,不多说,首先要有一个二维码的生成软件才行,这里找了一个叫QrenCode的软件,好处是可以在命令行中进行生成。(下载地址: http://pkgs.org/download/qrencode&找自己合适的下载 应该还要一个依赖库libqrencode)1&#QrenCode&下面是centos6.4的安装命令&
2&wget&http://dl.fedoraproject.org/pub/epel/6/i386/qrencode-3.4.2-1.el6.i686.rpm3&wget&http://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus/i586/RPMS.classic/libqrencode-3.4.3-alt1.i586.rpm&4&rpm&-ivh&libqrencode-3.4.3-alt1.i586.rpm5&rpm&-ivh&qrencode-3.4.2-1.el6.i686.rpm  命令行生成二维码的方法生成二维码格式
qrencode&-o&[filename.png]&‘[text/url/information&to&encode]‘
参数-o&表示生成到指定文件-s&num&表示生成的二维码的大小,每个点使用num个像素代替-v&num&表示生成的版本  创建一个login.c文件用于创建一个用于显示二维码的cgi (这里用的服务器是我博客中提到的,虽然还有bug,但是还是够用的。其他的服务器应该也是可以的。用自己的服务器会不会被骂((逃 )&1&#include&&stdio.h&&2&#include&&string.h&&3&#include&&stdlib.h&&4&#include&&time.h&&5&#include&&unistd.h&&6&#include&&sys/wait.h&&7&&8&int&rand_str(char&*str,int&num)&9&{10&&&&&int&i,j;11&&&&&for(i=0;i&i++)12&&&&&{13&&&&&&&&&j=rand()%3;14&&&&&&&&&if(j==0)15&&&&&&&&&{16&&&&&&&&&&&&&str[i]='a'+rand()%26;17&&&&&&&&&}18&&&&&&&&&else&if(j==1)19&&&&&&&&&{20&&&&&&&&&&&&&str[i]='A'+rand()%26;21&&&&&&&&&}22&&&&&&&&&else&if(j==2)23&&&&&&&&&{24&&&&&&&&&&&&&str[i]='0'+rand()%10;25&&&&&&&&&}26&&&&&}27&&&&&str[i]=0;28&&&&&return&0;29&}30&31&int&main(int&argc,char&**args)32&{33&&&&&int&i;34&&&&&char&code[64];35&&&&&char&str[64];36&&&&&char&qc[128];37&&&&&char&filename[64];38&&&&&char&cmd[128];39&&&&&int&40&&&&&pid_t&41&&&&&srand(time(NULL));42&&&&&rand_str(code,20);43&44&45&&&&&strcpy(qc,&http://192.168.198.157:8080/login/&);46&&&&&strcat(qc,code);47&48&&&&&strcpy(filename,code);49&&&&&strcat(filename,&.png&);50&51&&&&&sprintf(cmd,&qrencode&-o&www/qc/%s&-s&10&'%s'&,filename,qc);52&53&&&&&//生成二维码54&&&&&system(cmd);55&56&&&&&printf(&&html&&head&&title&扫描登录&/title&&/head&&body&&);57&&&&&printf(&&img&src=\&%s\&&/&&,filename);58&&&&&printf(&&/body&&/html&&);59&60&&&&&return&0;61&}  运行结果,基本每次都是可以随机的。  这里还有一点要说的,就是随机算法的问题(好像是什么十大算法之类的),我弄不了,使用的是库函数。我这个程序的随机种子是1秒一次,也就是1秒才会变换一次,还有一个问题就是这个srand函数的随机种子数好像不多,应该是6W多吧,这个如果用户一多就麻烦了。我这里想到的另一个办法是根据那个毫秒数来弄(例如用加密算法来对这个毫秒进行加密得到一个字符串,再加个什么的都可以,例如用户名什么的,最主要的是保证唯一,这个如果实际产品中实现应该不是很难)。  接下来要做的是根据这个url地址再生成一个cgi程序,用于手机APP的调用。我这里想到的办法是每次刷新这个login页面时,就复制一个cgi程序,给APP调用。APP的调用机制是根据这个用二维码生成的url地址发送一个确认包。(确认包使用get方式可以,用post方式也可以,另外用一台服务器也是可以的,这个要看用户量等具体情况。总之就是这样了。)  我这里为了演示的方便就采用get方式(原因嘛?我没有APP这种客户端,就简单的在手机上对这个url后面加上个参数了。)  本次实验用到的3个程序代码 (代码中的目录问题是因为我的服务器设计有缺陷,导致有些目录要使用相对于程序的绝对路径,有的可以使用相对路径,总之我试验的时候有点坑,不过不影响代码的可读性)  login.c&1&#include&&stdio.h&&2&#include&&string.h&&3&#include&&stdlib.h&&4&#include&&time.h&&5&#include&&unistd.h&&6&#include&&sys/wait.h&&7&&8&int&rand_str(char&*str,int&num)&9&{10&&&&&int&i,j;11&&&&&for(i=0;i&i++)12&&&&&{13&&&&&&&&&j=rand()%3;14&&&&&&&&&if(j==0)15&&&&&&&&&{16&&&&&&&&&&&&&str[i]='a'+rand()%26;17&&&&&&&&&}18&&&&&&&&&else&if(j==1)19&&&&&&&&&{20&&&&&&&&&&&&&str[i]='A'+rand()%26;21&&&&&&&&&}22&&&&&&&&&else&if(j==2)23&&&&&&&&&{24&&&&&&&&&&&&&str[i]='0'+rand()%10;25&&&&&&&&&}26&&&&&}27&&&&&str[i]=0;28&&&&&return&0;29&}30&31&int&main(int&argc,char&**args)32&{33&&&&&int&i;34&&&&&char&code[64];35&&&&&char&str[64];36&&&&&char&qc[128];37&&&&&char&filename[64];38&&&&&char&cmd[128];39&&&&&int&40&&&&&pid_t&41&&&&&srand(time(NULL));42&&&&&rand_str(code,20);43&44&45&&&&&strcpy(qc,&http://192.168.198.157:8080/qc/&);46&&&&&strcat(qc,code);47&48&&&&&strcpy(filename,code);49&&&&&strcat(filename,&.png&);50&51&&&&&//生成二维码52&&&&&sprintf(cmd,&qrencode&-o&www/qc/%s&-s&10&'%s'&,filename,qc);53&&&&&system(cmd);54&55&56&&&&&printf(&&html&&head&&title&扫描登录&/title&&/head&&body&&);57&&&&&printf(&&img&src=\&%s\&&/&&,filename);58&&&&&printf(&&br&如果APP上显示登录成功那么就点击该按钮进行跳转&br&&);59&&&&&printf(&&form&method=\&get\&&action=\&welcome\&&&);//这里的action居然不能带参数,哎前端不会啊60&&&&&printf(&&input&type=\&hidden\&&name=\&code\&&value=\&%s\&&&,code);61&&&&&printf(&&input&type=\&submit\&&value=\&提交\&&&/form&&);62&&&&&printf(&&/body&&/html&&);63&64&&&&&sprintf(cmd,&ln&-s&callback&www/qc/%s&,code);65&&&&&system(cmd);66&67&&&&&return&0;68&}& &  callback.c&1&#include&&stdio.h&&2&#include&&stdlib.h&&3&#include&&string.h&&4&&5&int&split(char&**arr,char&*str,const&char*del)&6&{&7&&&&&char&*s=NULL;&8&&&&&int&i=0;&9&&&&&s=strtok(str,del);10&&&&&while(s!=NULL)11&&&&&{12&&&&&&&&&*arr++=s;13&&&&&&&&&s=strtok(NULL,del);14&&&&&&&&&i++;15&&&&&}16&&&&&return&i;17&}18&19&void&split_key(char&*ch,char&*key,char&*value)20&{21&&&&&int&22&&&&&int&i;23&&&&&int&j;24&&&&&len=strlen(ch);25&&&&&j=0;26&&&&&for(i=0;i&i++)27&&&&&{28&&&&&&&&&if(ch[i]=='=')29&&&&&&&&&{30&&&&&&&&&&&&&i++;31&&&&&&&&&&&&&32&&&&&&&&&}33&&&&&&&&&key[j]=ch[i];34&&&&&&&&&j++;35&&&&&}36&&&&&key[j]=0;37&&&&&j=0;38&&&&&for(;i&i++)39&&&&&{40&&&&&&&&&value[j]=ch[i];41&&&&&&&&&j++;42&&&&&}43&&&&&value[j]=0;44&&&&&return&;45&}46&47&int&main(int&argc,char&**args)48&{49&&&&&char&*50&&&&&char&*myargs[32];51&&&&&int&cnt=0;52&&&&&int&i;53&&&&&char&key[32],value[32];54&&&&&char&username[32],code[32];55&&&&&char&cmd[128];56&&&&&FILE&*&fp=NULL;57&&&&&memset(myargs,0,sizeof(myargs));58&&&&&memset(username,0,sizeof(username));59&&&&&cnt=split(myargs,args[1],&&&);60&61&&&&&for(i=0;i&i++)62&&&&&{63&&&&&&&&&split_key(myargs[i],key,value);64&&&&&&&&&if(strcmp(key,&username&)==0)65&&&&&&&&&&&&&strcpy(username,value);66&&&&&&&&&if(strcmp(key,&code&)==0)67&&&&&&&&&&&&&strcpy(code,value);68&&&&&}69&70&&&&&//这里可以写上完整的网页和处理过程71&72&&&&&if(username[0]!=0)73&&&&&{74&&&&&&&&&printf(&&p&通过移动端进行用户登录成功,当前登陆的用户是:&/p&&);75&&&&&&&&&printf(&&font&color=\&red\&&%s&/font&&&&现在可以在浏览器中进行操作了&,username);76&&&&&}77&&&&&else78&&&&&{79&&&&&&&&&printf(&参数错误\n&);80&&&&&}81&82&&&&&sprintf(cmd,&www/qc/%s.html&,code);83&&&&&fp=fopen(cmd,&w&);84&&&&&fprintf(fp,&您好,用户:%s&&通过APP移动端登录成功.&&采用的uuid是:%s\n&,username,code);85&&&&&fclose(fp);86&87&&&&&return&0;88&}  welcome.c&1&#include&&stdio.h&&2&#include&&stdlib.h&&3&#include&&string.h&&4&#include&&unistd.h&&5&&6&int&split(char&**arr,char&*str,const&char*del)&7&{&8&&&&&char&*s=NULL;&9&&&&&int&i=0;10&&&&&s=strtok(str,del);11&&&&&while(s!=NULL)12&&&&&{13&&&&&&&&&*arr++=s;14&&&&&&&&&s=strtok(NULL,del);15&&&&&&&&&i++;16&&&&&}17&&&&&return&i;18&}19&20&void&split_key(char&*ch,char&*key,char&*value)21&{22&&&&&int&23&&&&&int&i;24&&&&&int&j;25&&&&&len=strlen(ch);26&&&&&j=0;27&&&&&for(i=0;i&i++)28&&&&&{29&&&&&&&&&if(ch[i]=='=')30&&&&&&&&&{31&&&&&&&&&&&&&i++;32&&&&&&&&&&&&&33&&&&&&&&&}34&&&&&&&&&key[j]=ch[i];35&&&&&&&&&j++;36&&&&&}37&&&&&key[j]=0;38&&&&&j=0;39&&&&&for(;i&i++)40&&&&&{41&&&&&&&&&value[j]=ch[i];42&&&&&&&&&j++;43&&&&&}44&&&&&value[j]=0;45&&&&&return&;46&}47&48&int&main(int&argc,char&**args)49&{50&&&&&char&*51&&&&&char&*myargs[32];52&&&&&int&cnt=0;53&&&&&int&i;54&&&&&char&key[32],value[32];55&&&&&char&code[32];56&&&&&char&cmd[128];57&&&&&memset(myargs,0,sizeof(myargs));58&&&&&cnt=split(myargs,args[1],&&&);59&60&&&&&for(i=0;i&i++)61&&&&&{62&&&&&&&&&split_key(myargs[i],key,value);63&&&&&&&&&if(strcmp(key,&code&)==0)64&&&&&&&&&&&&&strcpy(code,value);65&&&&&}66&67&&&&&sprintf(cmd,&www/qc/%s.html&,code);68&&&&&//这里可以写上完整的网页69&&&&&if(access(cmd,F_OK)==0)70&&&&&{71&&&&&&&&&printf(&终于登录了,可以各种操作了&);72&&&&&}73&&&&&else74&&&&&{75&&&&&&&&&printf(&请确认是否通过APP扫描登陆过&);76&&&&&}77&78&&&&&return&0;79&}  代码就放在那里,具体的操作过程就用截图方式进行讲解  (1) 打开服务器,输入网址:&http://192.168.198.157:8080/qc/login  (2)如果没有通过移动端的的验证,此时点击提交是不起作用的。  (3)我们使用手机客户端进行验证(由于我没有设计可用的APP,这里使用GET方式,自己构造一个。注意,如果已经有了客户端那么,可以通过客户端APP自行构造一个请求,可以是post,也可以是另外一个action然后进行验证什么的。总之怎么安全,怎么方便怎么来。)下面这个是我手机通过扫二维码,然后手动构造一个get请求得到的。(请求如下: http://192.168.198.157:8080/qc/GL199v8zsHV2bu7R7Qad?username=admin&code=GL199v8zsHV2bu7R7Qad)  (4)好了,我们可以在那个login界面上点击登录就可以登录进去了。(这里为什么不像微信那样,APP客户端一扫描确认,浏览器就直接跳转,而是要手动点击提交按钮呢?那是因为我对前端的技术不是很了解,不知道怎么构建一个长连接,和跳转什么的。所以就弄成简单的,手动点击了,不过这些都不是重点)  (5)下面这些是服务器的一些信息  还有一个问题就是如果访问的次数多了,那些中间文件就太多了,这时可以通过一个脚本,按时间进行清理。  处理的流程图  终于完成了。心情有点小激动了。
12-1611-0308-3008-1712-0311-30微信电脑版下载及DNweixin新功能详解09-1208-1301-2101-21
阅读本文后您有什么感想? 已有23人给出评价!
名称大小下载您的位置:
精品软件课程
photoshop教程让你从入门到精通,从新...
快播播放器(Qvod Player)是一款基...
Word是由Microsoft公司出版的文字...
《植物大战僵尸》是一款极富策略性的小游戏,可...
Excel是office的重要组成部分。多特...
小游戏推荐
出处:2345软件教程
人气:108664
您可能感兴趣的话题:
核心提示:微信电脑版怎么登陆 可以不用扫一扫吗
  电脑版登陆方法:  1、首先要下载,安装后我们可以看到桌面出现一个“微信二维码”,只要我们将鼠标移到二位码处就可以看到它提示我们用手机扫一扫,大家就可以掏出你的手机用“扫一扫”扫我们桌面的二维码  微信 for Windows(微信电脑版)下载地址:   2、然后在扫描之后我们可看到桌面显示了我们的头像,手机显示了“windows登录确认”。  3、桌面会显示自己的头像,提示扫描成功,手机点击登录windows微信,  4、然后我们电脑端的就会自动登录到好友界面了  不用扫一扫登陆方法:  1.下载安装,然后在靠谱助手中安装微信。  2.打开微信,在弹出的微信登录界面选择你要登录的账号方式(手机号/qq号、邮箱地址或者Facebook)。小编以qq号为例。  3.输入qq号和密码,最后点登录即可。
相关教程推荐
相关软件推荐&>&&>&&&&微信电脑版不用二维码怎么登录?
微信电脑版不用二维码怎么登录?
作者:小鑫 来源:PC下载网资讯 软件教程 时间: 14:04:15
版是腾讯为超过三亿人使用的微信的用户开发的一款电脑使用的微信。最初的版本是页版,随之升级开发为的形式,也就是说它是一种最新网页版的形式。电脑版让用户用手机在电脑端上扫码登录,无需输入帐号和密码。
1.首先在PC下载网搜索电脑版软件,小编已经为大家准备好,即可。
2.是微信官方推出的一款,能够帮助用户在电脑上登录自己的微信账号,实现与好友互动聊天的功能,但有的小伙伴发现想要登录的话必须扫码才能登录,那么怎么才能不扫码也能登录呢?
3.在我们扫码登陆过一次之后,短期时间内再次登录的话,打开微信软件将会不提示我们扫码,而是提示我们在手机上点击允许登录,我们点击一下即可直接登录微信。
4.如果小伙伴连这一步也嫌麻烦的话,我们还可以使用器来跳过这些步骤,在电脑上安装一个安卓系统,然后登录自己的微信号,只需要账号密码即可。小伙伴们可以在本站下载到想要的安卓,点击即可跳转到模拟器列表。
5.下载完成之后我们在电脑上启动模拟器,然后在里面我们下载一个,然后在里面我们就可以按照正常的登录模式,使用手机号接受短信,或者使用账号密码等进行登陆了。
任何一种方式都需要当前登录微信账号的人知道,否则是不可能在不知情的情况下就登录到对方的微信号的,所以小伙伴们想要查看对方微信聊天的还是洗洗睡吧。
如有问题,请加群联系小编!
③:(已满);群④:
PC下载站网友:微信电脑版不用二维码怎么登陆_百度文库
您的浏览器Javascript被禁用,需开启后体验完整功能,
享专业文档下载特权
&赠共享文档下载特权
&10W篇文档免费专享
&每天抽奖多种福利
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
微信电脑版不用二维码怎么登陆
&&微信电脑版不用二维码怎么登陆
阅读已结束,下载本文需要
想免费下载更多文档?
定制HR最喜欢的简历
你可能喜欢问下:手机没在身边,微信电脑网页版如何登陆?【汉中吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:594,378贴子:
问下:手机没在身边,微信电脑网页版如何登陆?收藏
手机不在身边,例如:忘在家、忘在单位、忘在车里、或直接是丢了、被盗了.....。总之是没带手机,电脑如何登陆微信?
软件设计的是不是有缺陷?不能像QQ那样设计吗?
要求用手机扫二维码以登陆!截的图发出来瞬间被删.....
是贴吧不允许发二维码?
微信本来就是手机上用的软件,和qq的定位就不同。
没带手机没办法,并且聊天记录只有当天很少的一部分,朋友圈也看不到。
windows版微信必须用手机扫二维码才能登录
唉,这个网页版的微信端,就是个鸡肋。——没手机还用不了!一个端还收另一个端的限制,它的缺陷是显而易见的。那么,这种设计的优点在哪呢?
登录百度帐号}

我要回帖

更多关于 微信二维码登录 接口 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信