Implementation Principle of Scanning Login
Source: http://www.cnblogs.com/liyasong/
Today I'll talk about the implementation principle of scanned login, which is more popular nowadays.
Requirements introduction
Firstly, it introduces what is sweep code login. Now, most of the students have qq and Taobao, Tianmao and other software on their mobile phones. And the companies that develop these app s have their corresponding websites. In order to make it easier and safer for users to log in when using their website. These companies provide services that can be logged in by using mobile phones and sweeping them. The effect of web page login is as follows:
Many small partners may feel amazing, the Web page only shows a two-dimensional code, how can it know which mobile phone scanned the two-dimensional code and logged in? Moreover, it is amazing that after the login is completed, the user information can be displayed directly to the user.
Principle Interpretation
Page End+ The server
Next is the detailed implementation of this service. First, let's talk about the principle: when the user opens the login page of the website, he sends a request to the server of the browser to get the two-dimensional code of login. After the server receives the request, it randomly generates a uuid and stores the id as the key value in the redis server. At the same time, it sets an expiration time. After the expiration, the user needs to refresh and retrieve the two-dimensional code. At the same time, this key value is combined with the company's verification string, and a two-dimensional code generation interface is used to generate a picture of the two-dimensional code (two-dimensional code generation, there are many ready-made interfaces and source codes on the network, which will not be introduced here). Then, the two-dimensional code picture and uuid are returned to the user's browser.
After the browser gets the two-dimensional code and the uuid, it sends the request to the browser every other second, whether the login is successful or not. The request carries UUID as the identifier of the current page. Students here will be surprised that the server only saves a UUID as the key value in redis. How can there be user id information?
There will indeed be user id information, which is stored in redis by the mobile server. The specific operation is as follows:
Mobile Terminal + Server
In other words, after the browser gets the two-dimensional code, the two-dimensional code will be displayed on the web page, and give the user a hint: please take out your mobile phone, open a sweep for login. Users can get a validation message and a uuid when they take out the mobile phone to scan the two-dimensional code (the function of scanning the two-dimensional code to get strings also has a lot of demo s on the internet, which is not described in detail here). Since the mobile phone has been logged in, when accessing the server on the mobile phone, the parameters are returned to carry a user's token, from which the server on the mobile phone can parse to the user's userId. Instead, token is encrypted, and the risk of modification is much lower. The handset side will parse the data together with the user token as a parameter and send a validation login request to the server (the server here is the handset server, the server on the handset side is not the same server as the web server). After receiving the request, the server first compares the authentication information in the parameters to determine whether it is the user login request interface. If so, return a confirmation message to the phone.
When the mobile terminal receives the return, it will Login Confirmation The box is displayed to the user (to prevent the user from misoperation, while making the login more humane). After the user confirms the login operation, the mobile phone sends the request again. After the server gets uuId and userId, the user's userid is stored as value in redis and UUID as key pair.
Successful login
Then, when the browser sends the request again, the server on the browser side can get a user Id, and call the login method to sound like a token on the browser side. When the browser sends the request again, the user information is returned to the browser and the login is successful. The reason why user ID is stored here instead of directly storing user information is that user information on mobile phone is not necessarily identical to user information on browser.
The login schematic is as follows:
Extended Reading
The Principle, Function and Usage of SSM Framework
Principle and Simple Implementation of Single Sign-on
Detailed Explanation of Microblog Crawler's "Log-Free" Skills and Java Implementation
Scanning Focuses on Free Access to More Resources
<div class="hide-article-box hide-article-pos text-center"> <a class="btn-readmore" data-report-view="{"mod":"popu_376","dest":"https://blog.csdn.net/xiamiflying/article/details/82719152","strategy":"readmore"}" data-report-click="{"mod":"popu_376","dest":"https://blog.csdn.net/xiamiflying/article/details/82719152","strategy":"readmore"}"> Read the full text <svg class="icon chevrondown" aria-hidden="true"> <use xlink:href="#csdnc-chevrondown"></use> </svg> </a> </div> <div class="recommend-box"><div class="recommend-item-box type_blog clearfix" data-report-view="{"mod":"popu_387","dest":"https://blog.csdn.net/gentlu/article/details/78592571","strategy":"BlogCommendFromMachineLearnPai2","index":"0"}" data-report-click="{"mod":"popu_387","dest":"https://blog.csdn.net/gentlu/article/details/78592571","strategy":"BlogCommendFromMachineLearnPai2","index":"0"}"> <div class="content" style="width: 852px;"> <a href="https://Blog.csdn.net/gentlu/article/details/78592571"target="_blank"rel="noopener"title="java realizes simple scanned login function (imitating Wechat Web page version scanner)"> <h4 class="text-truncate oneline" style="width: 692px;"> java Simple implementation<em>Scanning login</em>function(Imitate Wechat Webpage Scan Code) </h4> <div class="info-box d-flex align-content-center"> <p class="date-and-readNum oneline"> <span class="date hover-show">11-21</span> <span class="read-num hover-hide"> Reading Number 3 ten thousand+</span> </p> </div> </a> <p class="content" style="width: 852px;"> <a href="https://Blog.csdn.net/gentlu/article/details/78592571"target="_blank"rel="noopener"title="java realizes simple scanned login function (imitating Wechat Web page version scanner)"> <span class="desc oneline">#java implements simple scanned login function jsp+spring+struts2+mybatis: -** imitates wechat pc web page version scanned login ** - ** uses js code to generate * qrcode * two-dimensional code to alleviate server pressure ** - ** js circular requests...</span> </a> <span class="blog_title_box oneline "> <span class="type-show type-show-blog type-show-after">Bowen</span> <a target="_blank" rel="noopener" href="https://Blog.csdn.net/gentlu "> from: <span class=" blog_title "> gentlu's blog</span></a> </span> </p> </div> </div>
<div class="comment-edit-box d-flex"> <a id="commentsedit"></a> <div class="user-img"> <a href="//me.csdn.net/weixin_38851693" target="_blank" rel="noopener"> <img class="" src="https://avatar.csdn.net/6/E/F/3_weixin_38851693.jpg"> </a> </div> <form id="commentform"> <input type="hidden" id="comment_replyId"> <textarea class="comment-content" name="comment_content" id="comment_content" placeholder="What would you like to say to the author?"></textarea> <div class="opt-box"> <!-- d-flex --> <div id="ubbtools" class="add_code"> <a href="#insertcode" code="code" target="_self"><i class="icon iconfont icon-daima"></i></a> </div> <input type="hidden" id="comment_replyId" name="comment_replyId"> <input type="hidden" id="article_id" name="article_id" value="82719152"> <input type="hidden" id="comment_userId" name="comment_userId" value=""> <input type="hidden" id="commentId" name="commentId" value=""> <div style="display: none;" class="csdn-tracking-statistics tracking-click" data-report-click="{"mod":"popu_384","dest":""}"><a href="#"Target="_blank"class=" comment_area_btn"rel=" noopener"> comment </a> </div> <div class="dropdown" id="myDrap"> <a class="dropdown-face d-flex align-items-center" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"> <div class="txt-selected text-truncate">Add code slices</div> <svg class="icon d-block" aria-hidden="true"> <use xlink:href="#csdnc-triangledown"></use> </svg> </a> <ul class="dropdown-menu" id="commentCode" aria-labelledby="drop4"> <li><a data-code="html">HTML/XML</a></li> <li><a data-code="objc">objective-c</a></li> <li><a data-code="ruby">Ruby</a></li> <li><a data-code="php">PHP</a></li> <li><a data-code="csharp">C</a></li> <li><a data-code="cpp">C++</a></li> <li><a data-code="javascript">JavaScript</a></li> <li><a data-code="python">Python</a></li> <li><a data-code="java">Java</a></li> <li><a data-code="css">CSS</a></li> <li><a data-code="sql">SQL</a></li> <li><a data-code="plain">Other</a></li> </ul> </div> <div class="right-box"> <span id="tip_comment" class="tip">It can also be input<em>1000</em>A character</span> <input type="button" class="btn btn-sm btn-cancel d-none" value="Cancellation of reply"> <input type="submit" class="btn btn-sm btn-red btn-comment" value="Comments"> </div> </div> </form> </div> <div class="comment-list-container"> <a id="comments"></a> <div class="comment-list-box" style="display: none;"> </div> <div id="commentPage" class="pagination-box d-none" style="display: none;"></div> </div>
Implementation of Wechat Web Scanning Login (Two Ways)
05-21 Reading Number 10 thousand +
https://www.cnblogs.com/jiangjunli/p/7436110.html In order to lower the threshold for users to log on to the website, Wechat Sweep Login has become more and more popular, so this function has been used in the recently accelerated project. Bowen From: column A9925
javaweb implements app scanning login
11-14 Reading Number 4449
1.web pages actively ask the server for a two-dimensional code picture containing one-dimensional identification generated by the server, or directly ask for a one-dimensional identification from the background, and generate two-dimensional code through js after getting the identification. Here I use the second way, as to why, personal feeling is so convenient, the background. Bowen From: DJ Yanzi's blog in Jiangxi
Wechat Scavenger Login Actual Warfare (with code)
10-11 Reading Number 3176
Source: JAVA Sunflower Treasure Guide: Because of the abundant traffic in the micro-messaging terminal, the function of scanned login system has also been favored by many systems. This paper will explain the veil of this technology in detail. Preparations for demonstration effect 1. Need an open platform account for Wechat, and create a website application to click and view. Bowen From: javafirst
<div class="recommend-item-box recommend-recommend-box"><div id="kp_box_59" data-pid="59" data-report-view="{"mod":"kp_popu_59-78","keyword":""}" data-report-click="{"mod":"kp_popu_59-78","keyword":""}"><script type="text/javascript"> (function() { var s = "_" + Math.random().toString(36).slice(2); document.write('<div style="" id="' + s + '"></div>'); (window.slotbydup = window.slotbydup || []).push({ id: "u3491668", container: s }); })();
2-D Code Logon (3) Scanning Logon
06-04 Reading Number 7069
Undertake the previous blog, after two-dimensional code generation, app scanned code, after the success of scanned code, mobile phone click login, bind login relationship, background do automatic association and automatic login. This article git address: https://github.com/xvshu/qrlog... Bowen From: Forgiveness
Principle and Practice of Scanning Login
08-18 Reading Number 1993
The foreword realizes a requirement of scanned login recently, and has no experience in this field before, so it is a bit panicky to receive this requirement. Finally, it realizes this function by consulting the information on the Internet and under the guidance of the boss. Now it has been put into use, and it is still very exciting after it is realized. Hereby... Bowen From: Confucian Space
Implementation Principle of Wechat Scanning Login Web Page
05-23 Reading Number 1175
Browser input: https://wx.qqq.com/?Lang=zh_CN mobile phone login Wechat, using the function of "sweep a sweep" to scan the two-dimensional code mobile phone on the web page successfully, prompt "login page version of Wechat"; the web page shows "successful scan please..." Bowen From: Just Code
How does scanned login work?
04-07 Reading Number 5506
How does scanned login work? Author: Mouse Wu Link: https://www.jianshu.com/p/7f072ac61763 web page version of Weixin just launched, millions of people were shocked by its way of login, do not need to enter a user name password, open the mobile phone Weixin. Bowen From: Huanggshulang 1234
<div class="recommend-item-box recommend-recommend-box"><div id="kp_box_60" data-pid="60" data-report-view="{"mod":"kp_popu_60-43","keyword":""}" data-report-click="{"mod":"kp_popu_60-43","keyword":""}"><div class="mediav_ad"><newsfeed class="newsfeed QIHOO__WEB__SO__1567588492849_563" id="QIHOO__WEB__SO__1567588492849_563" style="display:block;margin:0;padding:0;border:none;width:900px;height:84px;overflow-y:hidden;overflow-x:hidden;position:relative;text-align:left;"><info-div id="QIHOO__WEB__SO__1567588492849_563-info" style="zoom:1"><info-div class="QIHOO__WEB__SO__1567588492849_563 singleImage clk" data-href="https://ssxd.mediav.com/s?type=2&r=20&mv_ref=blog.csdn.net&enup=CAAB0hYITAgAAkwIFtIA&mvid=NjQwNjE3ODI3Mjg1MzA5MjAwNTAwMTk&bid=13923ca3ba43db66&price=AAAAAF1vgI4AAAAAAAw78QCzQezpP1CR3/nRwg==&finfo=DAABCAABAAAA7AgAAgAAAOkEAAM/S2adwhHNOwAIAAIAAAADCgADaKjzHT12Er8IAAQAAAEaBgAGG4sGAAoAAAgADgAAADMKAA8AAAAAACQCwAA&ugi=FcTgigEVyNtrTBUCFUAVXhUAABW6h+GeARaECBXIARaA/rW11O3IBRwWgda2grL/oue2ARUAAAA&uai=FeTGlAIlAhUEFtK8n6WwgfWo0QEV8ggl3MurpwIlABUaFAAcFv+7h++J3+L0dxUAAAA&ubi=FejnJBWkhJ4CFaD1xhUVwI36WBUGFRwWuonH+hQW0ry0jLrH+ajRATQCFqjgECUGFbTbnZ8FFZ4BFQAkFBbo5yQA&clickid=0&cpx=__OFFSET_X__&cpy=__OFFSET_Y__&cs=__EVENT_TIME_START__&ce=__EVENT_TIME_END__&ldtype=2&csign2=aV75QrTCu0Z=&url=http%3A%2F%2Fbaidu.code.jjyx.com%2Fhtmlcode%2F24889.html%3Fsourceid%3D%7Bsource_id%7D" data-pv="https://ssxd.mediav.com/s?type=1&r=20&tid=NjQwNjE3ODI3Mjg1MzA5MjAwNTAwMTk&finfo=DAABCAABAAAA7AgAAgAAAOkEAAM/S2adwhHNOwAIAAIAAAADCgADaKjzHT12Er8IAAQAAAEaBgAGG4sGAAoAAAgADgAAADMKAA8AAAAAACQCwAA&mv_ref=blog.csdn.net&enup=CAAB0hYITAgAAkwIFtIA&mvid=NjQwNjE3ODI3Mjg1MzA5MjAwNTAwMTk&bid=13923ca3ba43db66&ugi=FcTgigEVyNtrTBUCFUAVXhUAABW6h+GeARaECBXIARaA/rW11O3IBRwWgda2grL/oue2ARUAAAA&uai=FeTGlAIlAhUEFtK8n6WwgfWo0QEV8ggl3MurpwIlABUaFAAcFv+7h++J3+L0dxUAAAA&ubi=FejnJBWkhJ4CFaD1xhUVwI36WBUGFRwWuonH+hQW0ry0jLrH+ajRATQCFqjgECUGFbTbnZ8FFZ4BFQAkFBbo5yQA&ds=1&price=AAAAAF1vgI4AAAAAAAw78QCzQezpP1CR3/nRwg==,https://max-l.mediav.com/rtb?type=2&ver=1&v=CGQSEDEzOTIzY2EzYmE0M2RiNjYYsqOKASCisEUoAWIXNjQwNjE3ODI3Mjg1MzA5MjAwNTAwMTmIAQA&k=z1yDUgAAAAA=&w=AAAAAF1vgI4AAAAAAAw8IRQ0Wcwtr88G5U5bXA&i=81vTynZ219Z-&exp=BQBECgBECQFEAQJEEABDJABD&z=1" data-clk="https://max-l.mediav.com/rtb?type=3&ver=1&v=CGQSEDEzOTIzY2EzYmE0M2RiNjYYsqOKASCisEUoAWIXNjQwNjE3ODI3Mjg1MzA5MjAwNTAwMTlwAA&k=hObovAAAAAA=&i=81vTynZ219Z-&exp=BQBECgBECQFEAQJEEABDJABD&x=__OFFSET_X__&y=__OFFSET_Y__&st=__EVENT_TIME_START__&et=__EVENT_TIME_END__&adw=__ADSPACE_W__&adh=__ADSPACE_H__&tc=&turl="> <info-div class="wrap"> <info-div class="singleImage-img singleImage-img-left"> <info-div class="img" style="background-image:url(https://s3m.mediav.com/galileo/301556-27e49e469ababbb79563a62c9f9d2bab.gif)"><info-div class="ads-tag"></info-div></info-div> </info-div> <info-div class="singleImage-body singleImage-body-left"> <info-div class="singleImage-title">Chen Xiaochun frankly said: this game is not enough money can serve as a full-service elder brother, find the recharge entrance count I lose!</info-div> <info-div class="singleImage-desc">Playing games · Tinghsin</info-div> </info-div>
Detailed explanation of two-dimensional code scanning login [with simple example code (html+php+ios)]
10-26 Reading Number 9152
1. Preface When we write a new function that we don't understand very well, one of the stable and fast ways is to borrow (chao) to learn (xi) other people's implementation methods. So let's not rush to start coding, let's first look at how the Internet giants are doing. First, let's look at Tao. Bowen From: chWow's blog
java implements simple scanner login function (mimicking Wechat Web page version scanner) - gent..._CSDN blog
7-9
Implementation Principle of Microsoft Scanning Login Web Page Based on ios
08-19 Reading Number 4640
Browser input: https://wx.qqq.com/?Lang=zh_CN mobile phone login Wechat, using the function of "sweep a sweep" to scan the two-dimensional code mobile phone on the web page successfully, prompt "login page version of Wechat"; the web page shows "successful scan please..." Bowen From: Tianya Madman's Blog
<div class="recommend-item-box blog-expert-recommend-box" style="display: block;"> <div class="d-flex"> <div class="blog-expert-recommend"> <div class="blog-expert"> <div class="blog-expert-flexbox" data-report-view="{"mod":"popu_709","dest":"https://Blog.csdn.net/xiamiflying/article/details/82719152"} ">> <div class=" blog-expert-item "> <div class=" blog-expert-info-box "> <div class=" blog-expert-info-box "> <div class=" blog-expert-img-box "data-report-click=" {" mod" " " u_709" & desquot; pop&article"; & quot; http::///httg::///csd://hthttg:///cfly.csdn/blog.cfly/net/flyflyfly719152 & quot Https:///blog.csdn.net/gentlu "target="_blank"><img src=" https://avatar.csdn.net/E/8/7/3_gentlu.jpg "alt=" alt="that year, the sky was very high, the wind was very clear,"title="that year, the sky was very high, the wind was very clear in that year, the sky was very clear"<<//a ><a ><report-span="{data-report-report-click={" mod quotquotquot: "quotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotquotpopu_710 & quot; & quot; dest & quot; & quot; HT Tps:///blog.csdn.net/xiamiflying/article/details/details/82719152"}">> <span class=" blog-expert-button-follow btn-red-follow "data-name=" gentlu "data-name=" gentlu"gentlu"data-nick="that year, the sky was very high and the wind was clear">>>> > > > > > > > > > > > </span > </span > </div><div class="info>> < span-data-data-data-ck={report" mod&clicliclimod mod; " &pop; & pop; & pop; & pop; & pop The results of this study are as follows:1.& Quot; dest"::" https://blog.csdn.net/xiamiflying/article/details/82719152"} "> <a href=" https://blog.csdn.net/gentlu <a href="https://blog.csdn.net/gentlu"target="_blankblankblankblank"><h5 class=<h5 class="oneline Title Title Title:=" that year, the sky was very high and the wind was very clear ">" that year, the sky was very high, the sky was very clear, and the wind was very clear </h5> <</hspan><<< < a >< span >< a >< a >< span>p class="article-num“ Title = "16 articles">> 16 articles </title Title =<p ><p><p class = "article-num" title = "rank: thousands of miles away"= "rank: thousands of miles away">rank: thousands of miles away </p ><p ><<</p ><</p ><<<<><</p ><< </div ><div class= "blog-expert-item"><blog-expert-item>><div class = <blog-expert-info-box>><div class= "blog-expert-info-box-box"><divclass= "blog-expert-img-img-box" data-data-report-quot; {" mod; " " des Https:///blog.csdn.net/xiamiflying/article/details/82719152"} "> <a href=" https://blog.csdn.net/A9925 target="_blank"><img src="target="_blank"><img src=" https://avatar.csdn.net/C/E/0/3_a99a9925.jpg `alt="snail slowly climb"report title="snail slowly climb"title="snail slowly climb < data > < data > < data > < span > < data > < data > > < data > < data > < a > < data >click="{quot; mod & quot; & quot; p Opu_710", ", " dest"::" https://blog.csdn.net/xiamiflying/article/details/82719152";;} ">>> <span class = <span class =" blog-expert-button-follow btn-red-follow "data-name=" A9925 "data-nick=" snail slowly climbing up ">>>> </span ><</span > <<< </div > div = <divo> < report > < span-data-click= data-data-click= {data-quot {mod {mod quot {&mod quot:&q Popu_709",", " dest"::" https://blog.csdn.net/xiamiflying/article/details/8271919152";} "><a href =" https://blog.csdn.net/A9925 "target="_blank"<h5=<oneline title=" class="oneline"title="snail slowly climb up" >>> snail slowly climb </h5> </h5> </a > </span> < p >< P >< P >< P >< P >< P > < p > < p >< P > >< P > > < p >< class > >Num "title=" 454 articles Chapter ">>> 454 articles">>>> 454 articles </p><p><p class="article-num" title= "title=" rank: 3000+>>rank: 3000++>>>>>>>>>>>>>>>>>>>>>>>>><454 articles </p></p><></div><div class=<div-expert-item>>>><div-expert-item>>><div class="div class=" blog-expert-img-class-blog-box "data-class-cliclicliclicliclicliclidata-report {" mod":::&pop:&709, &pop; &709 dest & quot; & quot; https://blog.c Sdn.net/xiamiflying/article/details/82719152"}""><a href=""><a href ="https://blog.csdn.net/u014598014"target ="_blank"> <img SRC =<https://avatar.csdn.net/6/A/7/3_u0145459801014.jpg "alt=" Jiangxi ReDJJMix "title=" Jiangxi ReJMix = "title =" Jiangxi DJMix report </data > > < click > Data > < click > < Click = {-click> quot {-quot {{-quot-quot {{{mod & quot; & quot; & popu_710 & quot; & quot; de Https:///blog.csdn.net/xiamiflying/article/details/82719152"} ">> <span class=> <span class=" blog-expert-button-follow btn-red-follow "data-name=" u014598014 "data-nick=" u014598014 "u01459898014" u014 "nick=" Jiangxi DJ tobacco pigeon ReMix ">>>>>></span></span> </div> <div class=" info>> <span-data-report-ck="{clicliclicliquot {mod; &pop quot; & mod&pop quot; & pop quotquot; 9 & quot;, & quot; dest":: " https://blog.csdn.net/xiamiflying/article/details/82719152"} ">> <a href=" https://blog.csdn.net/u014598014 "=""_blank">target <h5 class="oneline"title ="Title =" Jiangxi DJ tobacco ReMix ">Jiangxi DJ tobacco ReMix</h5></h5> </a> </span> </span>> <class>>> < class > < class > < class > < class > < class > < class > < class > < class > < class > < class > < 43 Articles > 43 Articles </p > <p class= "article-num" title= "ranking: thousands of miles away">ranking: thousands of miles away </p> <p> </p> </div> </div> </div> </div> </div> </div> </div> </div> </div><div class="recommend-item-box baiduSearch recommend-box-ident" data-report-view="{"mod":"popu_387","dest":"https://Blog.csdn.net/qq_25827845/article/details/details/7882383861" &" Strategy & quot; " search FromBaidu 1" " " search FromBaidu 1" " quot index index" " 5"} "data-report-click=" {" mod": " &" popu_387" & popu_387"quotquot; & & quot; & desquot; & dest" " " & quot; https://htttg.hthttp:///carticle / details / 78823861 & quot; & quot; strategegegeg Https:///g.csdn.net/q_25828282822582827845/details/article/article/7882828238383861" & quot; Index & quot;:" quot; 5"} "data-track-view=" {" mod": " popu_387" ", ", ", " dest" & quot; & quot; https:///g.csdn.csdn.net/q_258282828282827878787882828282383861details/details/articles/788238383838383861quot;; "; &; & quot; Index & quot; & quot; & 4; & quot; extension 1 & Q Https://blog.csdn.csdn.net/qq_25827845/article/details/7882827845/article/details/788238383861" " " data-track-click="{" mod":" quot; popu_387" " & quot; popu_387" " " " " dest" & blog.csdn.csdn.net/blog.csdn.net/q_25827878787845452582787845/article/details/78828282828238383861"; & quot;:""}"data-flg="true"> <a href= "https://blog.csdn.net/qqq_25827845/article/details/78823861" target="_blank">h4 class= "text-truncate oneline" style= "width: 774px;">Wechat<em> Scavenging Login</em> Principle Analysis-Cold Heart Blog-CSDN Blog</h4> <div class= "info-box-d-flex-content" Nt-center "> <p> <span class=" date "> 8-29 </span> </p> </div> </a> </div> </div> <div class=" recommend-item-box Baidu Search recommend-box-ident "data-report-view=" {" mod"& pop; & quot; u_387", & quot; Dest":: " & quot; https:///blog.csdn.net/xingbaozhen1210/article/details/8190626241" " strategy":" strategy": " search FromBaidu 1" " " index"; index":" quot; index" quot;; " 6"} [-report-click="{" mod" quotquotquot; "quotquotquot; " mod; "quotquot; "quot; &" " " u_387-popcsdn.net/xingbaozhen1210/article/det Ails/81906241", & & quot; Strategy & quot; " Strategy & quot; " searchFromBaidu 1" " quot; Index & quot; " 6"} "data-track-view=" {" mod": " " " " popu_387" " dest": &dest&dest": " https:////blog.csd.csdn.csd.cn/xingbahen1210/xingbaxinxinxingba1210/1210/1210/1210/xinxingbaoz/8181818181; & quot; searchFromBaidu1 & quot Quot; " Index & quot;:::::::::::::", ", " "} "data-track-click =" {" mod"; " " popu_387" ", " dest":" https:///blog.csdn.net/xingbaozhen1210/baozhen1210/details/details/819090details/details/8190906241", ", " Strategy & quot, ", " " & quot; & quot; & search Fromsearch, & Baidu quot, &index & quot;: 5, & quot; extended 1 & quot; & qu Https://blog.csdn.net/xingbaozhen1210/article/details/81906241"target="_blank">hclass="text-truncate line"style="width:774px;"<em> code-sweeping login</em> principle and practice-BlueKitty's blog-CSDN</h4> <div class= "info-box d-flex align-content-center"> <p> <span class= "date">4-19</span> </p> </div> </a> </div> </
How is the Wise Message Scanning Login implemented?
11-21 Reading Number 5660
When the web version of Wechat was launched, millions of people were shocked by its way of login. Without entering a user name and password, they would automatically login by opening the mobile phone and scanning it. In principle, the two-dimensional code can only be a piece of text encoding, how to use it to achieve fast login? Open the webpage version of Wechat, you can see the following. Bowen From: Forward Column
CAS Application and Principle of Single Sign-on Ultimate Scheme
09-20 Reading Number 241
Cookie's single sign-on implementation is simple, but there are many problems. For example, the user name password is constantly transmitted, which increases the possibility of stolen numbers. In addition, not cross-domain! 1. The review of single sign-on based on Cookie is based on Cookie... Bowen From: java interview written test
Wechat Public Number Development Sweep Logon (java version) - Programmer Ouyang Sihai - CSDN Blog
7-5
Business Logic Implementation of Microsoft User Scanning Logon and Logon Exit (java Version) -..._CSDN Blog
4-21
Analysis of the Principle of Wise Message Scanning Logon
12-17 Reading Number 9756
A Simple Summary of Scanning Login Bowen From: Blog of Cold Heart
<div class="recommend-item-box recommend-recommend-box"><div id="kp_box_61" data-pid="61" data-report-view="{"mod":"kp_popu_61-622","keyword":""}" data-report-click="{"mod":"kp_popu_61-622","keyword":""}"><div id="_8ocjrhf0n4e" style="width: 100%;"><iframe width="852" frameborder="0" height="66" scrolling="no" src="https://pos.baidu.com/s?hei=66&wid=852&di=u3600846<u=https%3A%2F%2Fblog.csdn.net%2Fxiamiflying%2Farticle%2Fdetails%2F82719152&psi=d5cb22dee6ed6af0ddbdd6249f99336f&ant=0&cdo=-1&ari=2&prot=2&cce=true&ccd=24&cja=false&pis=-1x-1&tcn=1567588493&cfv=0& ;cmi=4&dc=3&cec=UTF-8&par=1366x728&chi=1&tlm=1567588493&dtm=HTML_POST&col=zh-CN&exps=111000,118009,110011&drs=1&ti=%E6%89%AB%E7%A0%81%E7%99%BB%E5%BD%95%E5%AE%9E%E7%8E%B0%E5%8E%9F%E7%90%86&pss=1349x4957&ps=3508x380&dri=0&pcs=1349x625&dis=0& amp;tpr=1567588493024&dai=4<r=https%3A%2F%2Fwww.baidu.com%2Flink%3Furl%3DCC49G3yh61BUcMeJqv1ndEaGEN6TOb5Q-qlkG-IIuw8xKrsaMR2UEVB7qcDnwasUSalz6JwAGWcb_sPeUzYBUEFCDFEvvryon1oxbUWWT_q%26wd%3D%26eqid%3Ddbacf48000070c39000000065d6f8075&cpl=3&psr=1366x768"></iframe></div><script type="t Ext ext/javascript "src="//rabc1.iteye.com/common/web/production/79m9.js? F = aszggcwz "><</script ><img class =" pre-img-lasy "data-src=" https://kunyu.csdn.net/1.csdn.net/1.png?P=61& a=622& c=& k=& d= 1& d= 1& t=3> < < div > > > < < div class > > < div class > > < div class > < div class > < div class > > < div >"recommend-item-box Baidu Search recommend-box-ident" data-report-view="{&q" Mod" & & quotquot; " popu_387 & quot;; " popu_387 & quot;; " dest & quot;:" https://blog.csdn.net/cqt3589/article/details/7430details/7430212183 & quot; " Strategy & quot; " Strategy & quot; & Baiquot; search Fromdu1" " " index"quot; "quotquot;; "; quot; 9" quot;; quotquot;; quot;;; {data-report-report-report-ck={quot {quot; mod; " quot; & quot; dest & quot; & quot; https://blog.csd N.net/cqt3589/article/details/7430details/74302183 & quot; " Strategy & quot;:" search FromBaidu 1" " " Index & quot; " quot; " 9"} "data-track-view=" {" mod" " " popu_387" &popu_387"quot, ", ", &dest & quot; && dest":" " &article; https:////g.csdn.csdn.csdsdn.csdsdcccs89/cq3589; & quot; Strategy & quot; & quot; sear Https://blog.csdn.net/cblog.csdn.csdn.net/cqt3589/article/details/74qt3589/article/details/743030302183" " " extend1" & quot;} "data-track-click=" {" mod": " popu_387" & quot; & popu_387"quotquot; " " dest" " " https://blog.csdn.cblog.csdn.net/cqt3589/cqt3589/article/details/details/74741 & quot;, & quot; Index & quot;: 8, & quot; extension 1& Quot; & quot; & quot;} "data-flg=" true "> < a href=" https://blog.csdn.net/cqt3589/article/details/74302183 "target="_blank "> < h4=" text-truncate oneline "style=" width: 774px; "> Weixin Web page authorization to achieve < EM > scanning login </em > principle - cqt3589 blog </ctDN> CSDN > <div class="info-box d-flex align-content-center"> <p> <span class="date">4-10</span> </p> </div> </a> </div>
Analysis of the Implementation Principle of Scanning Login
10-28 Reading Number 1083
1. The browser generates a two-dimensional code, which contains the URL of Wechat and a random UUID, and sends messages to the server in turn. 2. The client scans the two-dimensional code and gets a binding of user's information and UUID, which is sent to the server 3. The server gets the user's information and UUI. Bowen From: Tssit's personal blog
<div class="recommend-item-box recommend-box-ident recommend-download-box clearfix" data-report-view="{"mod":"popu_387","dest":"https://download.csdn.net/download/zxq5097/10165742","strategy":"BlogCommendFromBaidu","index":"15"}" data-report-click="{"mod":"popu_387","dest":"https://download.csdn.net/download/zxq5097/10165742","strategy":"BlogCommendFromBaidu","index":"15"}"> <a href="https://download.csdn.net/download/zxq5097/10165742" rel="noopener" target="_blank"> <div class="content clearfix"> <div class=""> <h4 class="text-truncate oneline clearfix"> <em>Scanning login</em>function,Use workerman </h4> <span class="data float-right">12-20</span> </div> <div class="desc oneline"> Do it in your own way,I don't know if there's a better way.. Use thinkphp+workerman Done </div> <span class="type-show type-show-download">download</span> </div> </a> </div>
Login on PC of php technology website with mobile APP scanner
01-25 Reading Number 5130
Last year's functions, such as Taobao, Tencent and other website login pages, all have the function of APP scanner login. Last year, we also did a, based on our own APP implementation, not third party login. Ideas: 1. Generate a two-dimensional code, two-dimensional code link with a key. 2. Use database tables. Bowen From: column Yule 117737767
Using spring-data-redis to realize incr self-increment
09-03 Reading Number 30 thousand +
Many people should encounter various problems when using spring-data-redis. Anyway, I met. Because this blog was written after a period of time, and I was too lazy to reproduce the wrong scenes, I wrote a few questions with my memory: redis.c. Bowen From: Liu Benlong's column
springBoot integration redis
01-05 Reading Number 10 thousand +
Redis is defined as a high-performance key-value database. It supports many types of value stored, including string (string), list (linked list), set (set), zset(sortedset - ordered set) and hash (... Bowen From: Soda_lw's blog
<div class="recommend-item-box recommend-recommend-box"><div id="kp_box_62" data-pid="62" data-report-view="{"mod":"kp_popu_62-623","keyword":""}" data-report-click="{"mod":"kp_popu_62-623","keyword":""}"><script type="text/javascript"> (function() { var s = "_" + Math.random().toString(36).slice(2); document.write('<div style="" id="' + s + '"></div>'); (window.slotbydup = window.slotbydup || []).push({ id: "u3600849", container: s }); })();
Spr+redis Integration of Architectural Path
02-16 Reading Number 30 thousand +
1. Preface Redis is an open source log-based, Key-Value database written in ANSIC language, supporting network, memory-based and persistent, and providing multi-language API s. As we all know, database bottleneck is the most tolerant in everyday applications. Bowen From: A Blog that Never Forget Your Beginning Mind
Implementation of Wise Message Scanning Logon Function
08-30 Reading Number 7786
Reason: Simple, the company's account login needs to use the Wechat Scanning Login and QQ login function, so after doing the Wechat Scanning Login, I will write this Wechat Scanning Login function to achieve the tutorial started to need the website: https://open.weixin... Bowen From: Sam_D002 blog
Java Scanning Login Principle
04-20 Reading Number 3708
Java Easy Play Scanning Login 1, bloggers say to themselves.Recently, I met in the company project, and found that many friends do not know about it, just because they are interested in it. So I'm going to do some research. Scanning login technology is considered a good dry product. Share it to all of you. Bowen From: Angry, lazy blog
Implementation Principle of Scanning Login
08-22 Reading Number 61
Principle Explanation: Next is the detailed implementation of this service. First, let's talk about the principle: when the user opens the login page of the website, he sends a request to the server of the browser to get the two-dimensional code of login. When the server receives the request, it randomly generates a uu id, which acts as ke.. Bowen From: weixin_30241919
Implementation of mobile phone scanning two-dimensional code for login
07-22 Reading Number 4283
Implementation process: pc side: 1: Open two-dimensional code login page index. HTML 2: index. HTML call GetQrCodeServlet 3: GetQrCodeServl. Bowen From: column u013810758
<div class="recommend-item-box recommend-recommend-box"><div id="kp_box_63" data-pid="63" data-report-view="{"mod":"kp_popu_63-624","keyword":""}" data-report-click="{"mod":"kp_popu_63-624","keyword":""}"><script type="text/javascript"> (function() { var s = "_" + Math.random().toString(36).slice(2); document.write('<div style="" id="' + s + '"></div>'); (window.slotbydup = window.slotbydup || []).push({ id: "u4221910", container: s }); })();
Let APP implement scanned login, dry goods come
11-30 Reading Number 10 thousand +
Create a scanner library id scanner id username scanner token scanner tokensid unique identification whether 32-bit isOk has scanned the Web page two-dimensional code display content {"type":"login","sid":"8335bf9d6... Bowen From: Hengyi Technology
Simple Implementation of Scanning Login
10-21 Reading Number 9617
The development environment is: tomcat server, ios client server is the core of this design. The basic ideas are as follows: 1. In a tool class, simulate several users with a static mapname AndPassword HashMap, and use a static map. Bowen From: xiaolinyeyi's column
[Summary] A little summary about vue's use of Wechat Scanning Login
06-15 Reading Number 8967
vue-router + wechat scanner login Bowen From: Lentinus edodes and onions blog
JAVA Realizes Two-Dimensional Code Sweeping Logon
10-31 Reading Number 5856
There are four steps to realize client scanning login. Bowen From: FENGZIITI's blog
Development of Open Platform for Wechat: Web Wichat Scanning Login (OAuth 2.0)
07-11 Reading Number 40 thousand +
Transferred from http://www.cnblogs.com/0201zcr/p/5133062.html 1, OAuth 2.0, OAuth (Open Authorization) is an open standard that allows users to let third-party applications access the user's storage on a website. Bowen From: skykingf's column
<div class="recommend-item-box recommend-recommend-box"><div id="kp_box_64" data-pid="64" data-report-view="{"mod":"kp_popu_64-626","keyword":""}" data-report-click="{"mod":"kp_popu_64-626","keyword":""}"><script type="text/javascript"> (function() { var s = "_" + Math.random().toString(36).slice(2); document.write('<div style="" id="' + s + '"></div>'); (window.slotbydup = window.slotbydup || []).push({ id: "u3600856", container: s }); })();
Scanning Login Procedure
03-05 Reading Number 800
Browser input: https://wx.qqq.com/?Lang=zh_CN mobile phone login Weixin, use the "sweep" function to scan the page of the two-dimensional code mobile phone scan success, prompt "login page version of Weixin"; Web page display "successful scan please click on the mobile phone to confirm to login... Bowen From: Watermelon Blog
Android Implementation Scanning Logon
07-24 Reading Number 9142
Nowadays, it is very common to scan two-dimensional codes and jump login. Here we simulate the idea of realizing a simple jump login function to simulate login. 1. Establish a data table, which contains three fields: primary key id, username, random number randnumb. Bowen From: leavesC
Wechat Public Number Development Sweep Logon (java version)
07-05 Reading Number 3105
Business information management system can be used to log in with Wechat Sweep Code. Reference document is an open platform for Wechat. It is important to pay attention to the part of website application development guide of Wechat login, which is about document (understand process before development). Note that this is an open Wechat platform, different from the Wechat public platform, but also need to register an account. ... Bowen From: programmer Ouyang Sihai
Analysis of Scanning Login
11-05 Reading Number 1036
Analysis of Scanning Login Whether it's Wechat or Taobao, many mainstream websites support Scanning Login process in order to reduce the user's operation of entering account password twice on the computer. This greatly facilitates user operation, because not everyone can remember the password of WeChat, Taobao or Alipay, and the login of these App. Bowen From: Apple Lg column
[Wechat Open Platform] Wechat Third Party Scanning Login (Pro-Testing Available)
11-19 Reading Number 3005
Open platform needs enterprise certification to register, just this time the company provides an account, after the mediation, write a blog by the way. The difference between the public platform and the open platform is that the open platform of Wechat mainly faces the mobile application/website application developers, providing them with relevant rights and services such as Weichat login, share, payment and so on. Bowen From: weixin_36385007's blog
<div class="recommend-item-box recommend-recommend-box"><div id="kp_box_65" data-pid="65" data-report-view="{"mod":"kp_popu_65-1378","keyword":""}" data-report-click="{"mod":"kp_popu_65-1378","keyword":""}"><script type="text/javascript"> (function() { var s = "_" + Math.random().toString(36).slice(2); document.write('<div style="" id="' + s + '"></div>'); (window.slotbydup = window.slotbydup || []).push({ id: "u4221803", container: s }); })();
Wechat Open Platform--Wichat Scanning Login
09-07 Reading Number 1995
Notice: All operations are based on the domain name has been filed, and has an enterprise-level Wechat public number! 1. Preparations 1.1. Registration of Wechat Open Platform Accounts https://open.weixin. Bowen From: If you want to fly, you must have a heart that is not afraid of crushing.
Wechat Sweep Logon Jump Problem
The first of the three pictures is the scanner login of Wechat and the second is the jump after the successful login. But how can we jump in iframe? How can we jump back page after the successful login of PHP Wechat? Just like CSDN Wechat login, the scanner jumps directly to the home page. forum
<div class="recommend-item-box recommend-box-ident recommend-download-box clearfix" data-report-view="{"mod":"popu_387","dest":"https://download.csdn.net/download/qq_37361830/10434827","strategy":"BlogCommendFromBaidu","index":"36"}" data-report-click="{"mod":"popu_387","dest":"https://download.csdn.net/download/qq_37361830/10434827","strategy":"BlogCommendFromBaidu","index":"36"}"> <a href="https://download.csdn.net/download/qq_37361830/10434827" rel="noopener" target="_blank"> <div class="content clearfix"> <div class=""> <h4 class="text-truncate oneline clearfix"> WeChat<em>Scanning login</em>demo </h4> <span class="data float-right">05-24</span> </div> <div class="desc oneline"> Wechat Sweep Logon demo </div> <span class="type-show type-show-download">download</span> </div> </a> </div>
Implementing Thought of Client Scanning Logon Function
10-14 Reading Number 2528
Recently, I was doing a scanned login function, so I also searched on the Internet about the implementation of Weixin's scanned login. When this function is completed, I decided to sort out the whole idea of implementation, which is convenient for me to view later and for other apes with similar needs. ... Bowen From: xiqincai8 blog
Scanning login for PC
01-20 Reading Number 1944
Two-dimensional code scanning login, small partners in need can see Bowen From: Zhang sandege123's blog
<div class="recommend-item-box recommend-recommend-box"><div id="kp_box_66" data-pid="66" data-report-view="{"mod":"kp_popu_66-87","keyword":""}" data-report-click="{"mod":"kp_popu_66-87","keyword":""}"><div class="mediav_ad"><newsfeed class="newsfeed QIHOO__WEB__SO__1567588493182_299" id="QIHOO__WEB__SO__1567588493182_299" style="display:block;margin:0;padding:0;border:none;width:852px;height:60px;overflow-y:hidden;overflow-x:hidden;position:relative;text-align:left;"><info-div id="QIHOO__WEB__SO__1567588493182_299-info" style="zoom:1"><info-div class="QIHOO__WEB__SO__1567588493182_299 singleImage clk" data-href="https://ssxd.mediav.com/s?type=2&r=20&mv_ref=blog.csdn.net&enup=CAAB0hYITAgAAkwIFtIA&mvid=NjQwNjE3ODI3Mjg1MzA5MjAwNTAwMTk&bid=13923ca3ba43db66&price=AAAAAF1vgI4AAAAAAAw8h4puXT5r0Cuy1RvnQw==&finfo=DAABCAABAAAAmAgAAgAAAMsEAAM/QNRKTnQ3EAAIAAIAAAADCgADaKj8NtQN2fYIAAQAAAEoBgAGG4sGAAoAAAgADgAAADMKAA8AAAAAABcxgAA&ugi=FcTgigEVyNtrTBUCFUAVXhUAABW6h+GeARaECBXIARaA/rW11O3IBRwWgda2grL/oue2ARUAAAA&uai=FeTGlAIlAhUEFtK8n6WwgfWo0QEV8ggl3MurpwIlABUaFAAcFv+7h++J3+L0dxUAAAA&ubi=FeLnJBXEysQCFeSVnxcV0pWoWBUGFRwW/oHH+hQW0rzJ88ON/qjRATQEFqjgECUGFYONm7wOFZ4BFQAkChbi5yQA&clickid=0&cpx=__OFFSET_X__&cpy=__OFFSET_Y__&cs=__EVENT_TIME_START__&ce=__EVENT_TIME_END__&ldtype=2&csign2=ELYW1NkCL3Z=&url=http%3A%2F%2Fbaidu.code.mytanwan.com%2Fhtmlcode%2F35422.html" data-pv="https://ssxd.mediav.com/s?type=1&r=20&tid=NjQwNjE3ODI3Mjg1MzA5MjAwNTAwMTk&finfo=DAABCAABAAAAmAgAAgAAAMsEAAM/QNRKTnQ3EAAIAAIAAAADCgADaKj8NtQN2fYIAAQAAAEoBgAGG4sGAAoAAAgADgAAADMKAA8AAAAAABcxgAA&mv_ref=blog.csdn.net&enup=CAAB0hYITAgAAkwIFtIA&mvid=NjQwNjE3ODI3Mjg1MzA5MjAwNTAwMTk&bid=13923ca3ba43db66&ugi=FcTgigEVyNtrTBUCFUAVXhUAABW6h+GeARaECBXIARaA/rW11O3IBRwWgda2grL/oue2ARUAAAA&uai=FeTGlAIlAhUEFtK8n6WwgfWo0QEV8ggl3MurpwIlABUaFAAcFv+7h++J3+L0dxUAAAA&ubi=FeLnJBXEysQCFeSVnxcV0pWoWBUGFRwW/oHH+hQW0rzJ88ON/qjRATQEFqjgECUGFYONm7wOFZ4BFQAkChbi5yQA&ds=2&price=AAAAAF1vgI4AAAAAAAw8h4puXT5r0Cuy1RvnQw==,https://max-l.mediav.com/rtb?type=2&ver=1&v=CGQSEDEzOTIzY2EzYmE0M2RiNjYYsqOKASCisEUoAmIXNjQwNjE3ODI3Mjg1MzA5MjAwNTAwMTmIAQA&k=lCf2dgAAAAA=&w=AAAAAF1vgI4AAAAAAAw8q-CjKZeD3gPgRQvmWQ&i=8swTynZ219hg&exp=BQBECgBECQFEAQJEEABDJABD&z=1" data-clk="https://max-l.mediav.com/rtb?type=3&ver=1&v=CGQSEDEzOTIzY2EzYmE0M2RiNjYYsqOKASCisEUoAmIXNjQwNjE3ODI3Mjg1MzA5MjAwNTAwMTlwAA&k=zR+rTgAAAAA=&i=8swTynZ219hg&exp=BQBECgBECQFEAQJEEABDJABD&x=__OFFSET_X__&y=__OFFSET_Y__&st=__EVENT_TIME_START__&et=__EVENT_TIME_END__&adw=__ADSPACE_W__&adh=__ADSPACE_H__&tc=&turl="> <info-div class="wrap"> <info-div class="singleImage-img singleImage-img-left"> <info-div class="img" style="background-image:url(https://s3m.mediav.com/galileo/301553-5599d05229b0b1c2442d2dd4bd5424af.gif)"><info-div class="ads-tag"></info-div></info-div> </info-div> <info-div class="singleImage-body singleImage-body-left"> <info-div class="singleImage-title">Girls must not let men find this legend! The first one-stop attraction is too big!</info-div> <info-div class="singleImage-desc">Playing games · Tinghsin</info-div> </info-div>
Business Logic Implementation of Scanning Login and Logging Out for Micro Credit Users (java version)
07-05 Reading Number 1391
First, when the micro-credit user logs in, it always carries the openid (user's unique logo). So when the user logs in for the first time, we need to save the openid to the database, or to redis, when the user logs in again. Bowen From: programmer Ouyang Sihai
Internal Implementation Principle of Wechat Scanning Login
05-16 Reading Number 1889
User A visits Wechat Web page version, and the Wechat server generates a global uuid two-dimensional code for the session, which changes after each refresh. This ensures that a uuid can bind an account and a password to determine the uniqueness of the logged-in user. I refresh it three times and scan it. Bowen From: likesyour's blog
springboot -- Implementing Wise Message Scanning Logon
06-19 Reading Number 445
Registration Service Number (Subscription Number does not have permission) Use Test Number (also does not have permission, here we skip authorization to obtain user information directly) Test Number Registration: https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo? Bowen From: ws - Lu's blog space
SpringBoot implements Wechat Scanning Login to support the use of Wechat Login
09-07 Reading Number 5737
SpringBoot implements Wechat Scanning Login function, which enables websites to support the use of Wechat to login. This function is based on Wechat Open Platform. The premise of realizing this function is the need for Wechat Open Platform Account and the success of authentication (requiring 300 RMB). Domain names and IP that can be accessed by the public network are required. I. Wechat is open and fair. Bowen From: yongfeng
How can Android Wechat Realize Scanning Login Tencent Game
There is an overseas Tencent game default login way is Facebook and Twitter, the mobile phone needs to install the Weixin application before Weixin login entrance, unloading Weixin does not display the Weixin login button, Android mobile phone how to achieve the same point as the iPad Weixin login can appear two Weixin login game page, scanned into the game? forum
<div class="recommend-item-box recommend-recommend-box"><div id="kp_box_67" data-pid="67" data-report-view="{"mod":"kp_popu_67-658","keyword":""}" data-report-click="{"mod":"kp_popu_67-658","keyword":""}"><script type="text/javascript"> (function() { var s = "_" + Math.random().toString(36).slice(2); document.write('<div style="" id="' + s + '"></div>'); (window.slotbydup = window.slotbydup || []).push({ id: "u4623113", container: s }); })();
Realization Principle of Scanning Two-Dimensional Code Automatic Logon
03-02 Reading Number 10 thousand +
Implementation process: 1: Open two-dimensional code login page index.html; 2:index.html call GetQrCodeServlet; 3:GetQrCodeServlet do two things; a: generate random uuid,... Bowen From: Welcome to My Blogs
Simple implementation of scanned login
06-29 Reading Number 369
The simple principle is that the server generates a unique key, which is attached to the login to scan the two-dimensional code by the user, and accesses the server's feedback login status front-end page, scans the server's current key at intervals, and then operates on the following code: pack... Bowen From: Soekchl 521 blog
Brief description of Wechat login (authorized login, scanned login, silent login)
08-11 Reading Number 20 thousand +
Wechat Authorized Logon, Scanning Logon, Silent Logon Details Bowen From: qq_38746645 blog
The Principle of Scanning Login and the Simple Implementation of jsp
09-17 Reading Number 990
Introduction to Scanning Logon Implementation: In the development of a project, I saw the principle of Scanning Logon in an article, and felt that I could do it. So I wrote this simple version of Scanning Logon by myself, and the problems I have encountered. Here, I share with you all the following points:_________. Bowen From: yjt520557 blog
Implementation case of Wechat Sweeping Login Website (without authorization)
06-15 Reading Number 390
Preface Recently, due to business needs, it is necessary to add a function of scanning public number two-dimensional login website to the website. Through scanning login, users can log in to the website without entering account password, which improves the user experience. Second, it can also be used as a channel for public number to absorb powder. Develop and prepare for the implementation of Wise Message Scanning Login needs. Bowen From: Zhuge Xiao's blog
<div class="recommend-item-box recommend-recommend-box"><div id="kp_box_68" data-pid="68" data-report-view="{"mod":"kp_popu_68-625","keyword":""}" data-report-click="{"mod":"kp_popu_68-625","keyword":""}"><script type="text/javascript"> (function() { var s = "_" + Math.random().toString(36).slice(2); document.write('<div style="" id="' + s + '"></div>'); (window.slotbydup = window.slotbydup || []).push({ id: "u4623747", container: s }); })();
Enterprise Wechat Scanning Logon
11-23 Reading Number 10 thousand +
Overview Enterprise Wechat provides OAuth's scanned login authorization mode, which can let the enterprise website open in the browser, guide members to use enterprise Wechat scanned login authorization, so as to obtain members'identity information and avoid the link of login. Before the authorized login of enterprise Wechat, we need to manage the enterprise first. Bowen From: Chanal_sogaad's blog
<div class="recommend-loading-box"> <img src="https://csdnimg.cn/release/phoenix/images/feedLoading.gif"> </div> <div class="recommend-end-box"> <p class="text-center">No more recommendations.<a href="https://Blog.csdn.net/"class=" c-blue c-blue-hover c-blue-focus">Return to Home Page</a></p> </div> </div> </main> <aside> <div id="asideProfile" class="aside-box"> <!-- <h3 class="aside-title">personal data</h3> --> <div class="profile-intro d-flex"> <div class="avatar-box d-flex justify-content-center flex-column"> <a href="https://blog.csdn.net/xiamiflying"> <img src="https://avatar.csdn.net/1/F/E/3_xiamiflying.jpg" class="avatar_pic"> <img src="https://g.csdnimg.cn/static/user-reg-year/1x/5.png" class="user-years"> </a> </div> <div class="user-info d-flex flex-column"> <p class="name csdn-tracking-statistics tracking-click" data-report-click="{"mod":"popu_379"}"> <a href="https://Blog. csdn. net/xiamiflying "class=", "id=" UID "> Java Face Class</a> </p> <p class="personal-home-page"><a target="_blank" href="https://Me.csdn.net/xiamiflying "> TA's personal home page & gt;"</a></p> </div> <div class="opt-box d-flex justify-content-center flex-column"> <span class="csdn-tracking-statistics tracking-click" data-report-click="{"mod":"popu_379"}"> <a class="btn btn-sm btn-red-hollow attention" id="btnAttent">follow</a> </span> </div> </div> <div class="data-info d-flex item-tiling"> <dl class="text-center" title="177"> <dt><a href="https://Blog. csdn. net / xiamiflying? T = 1 "> original </a> </dt>" <dd><a href="https://blog.csdn.net/xiamiflying?t=1"><span class="count">177</span></a></dd> </dl> <dl class="text-center" id="fanBox" title="492"> <dt>Fans</dt> <dd><span class="count" id="fan">492</span></dd> </dl> <dl class="text-center" title="257"> <dt>like</dt> <dd><span class="count">257</span></dd> </dl> <dl class="text-center" title="88"> <dt>comment</dt> <dd><span class="count">88</span></dd> </dl> </div> <div class="grade-box clearfix"> <dl> <dt>Grade:</dt> <dd> <a href="https://Blog.csdn.net/home/help.html# level "title=" level 6, click on "target="_blank"to see the level description. <svg class="icon icon-level" aria-hidden="true"> <use xlink:href="#csdnc-bloglevel-6"></use> </svg> </a> </dd> </dl> <dl> <dt>Visit:</dt> <dd title="529903"> 52 ten thousand+ </dd> </dl> <dl> <dt>Integral:</dt> <dd title="6803"> 6803 </dd> </dl> <dl title="6372"> <dt>Ranking:</dt> <dd>6372</dd> </dl> </div> <div class="badge-box d-flex"> <span>Medal:</span> <div class="badge d-flex"> <div class="icon-badge" title="Columnist"> <div class="mouse-box"> <img src="https://g.csdnimg.cn/static/user-medal/zhuanlan.svg" alt=""> <div class="icon-arrow"></div> </div> <div class="grade-detail-box"> <div class="pos-box"> <div class="left-box d-flex justify-content-center align-items-center flex-column"> <img src="https://g.csdnimg.cn/static/user-medal/zhuanlan.svg" alt=""> <p>Columnist</p> </div> <div class="right-box"> Grant successful creation of a personal blog column to users. Add more than five blog posts to the column to light up! Write blog column to enrich the essence of technology. </div> </div> </div> </div> <div class="icon-badge" title="Persevere"> <div class="mouse-box"> <img src="https://g.csdnimg.cn/static/user-medal/chizhiyiheng.svg" alt=""> <div class="icon-arrow"></div> </div> <div class="grade-detail-box"> <div class="pos-box"> <div class="left-box d-flex justify-content-center align-items-center flex-column"> <img src="https://g.csdnimg.cn/static/user-medal/chizhiyiheng.svg" alt=""> <p>Persevere</p> </div> <div class="right-box"> Awarded to publish 4 or more original or translated articles within a natural month IT Users of blog posts. There is no such thing as a thousand miles or a small stream. The splendor of procedural life needs to be accumulated unremittingly. </div> </div> </div> </div> <div class="icon-badge" title="Diligent Pacesetter Writing Lv1"> <div class="mouse-box"> <img src="https://g.csdnimg.cn/static/user-medal/qinxiebiaobing_l1_t1.svg" alt=""> <div class="icon-arrow"></div> </div> <div class="grade-detail-box"> <div class="pos-box"> <div class="left-box d-flex justify-content-center align-items-center flex-column"> <img src="https://g.csdnimg.cn/static/user-medal/qinxiebiaobing_l1_t1.svg" alt=""> <p>Diligent Pacesetter Writing Lv1</p> </div> <div class="right-box"> Grant 1 to 3 original articles per natural week IT Users of blog posts. This medal will be issued automatically by the system next Wednesday morning according to the user's blog posting last week. </div> </div> </div> </div> </div> <script> (function ($) { setTimeout(function(){ $('div.icon-badge.show-moment').removeClass('show-moment'); }, 5000); })(window.jQuery) </script> </div>
Latest Articles
Classification column
-
Java Face Sutra 95 articles
-
Eclipse 9 articles
-
Hip-hop 163 articles
-
learning resource 7 articles
-
Java-01basic 5 articles
-
Linux 10 articles
-
book 2 articles
-
Oracle 7 articles
-
Java 230 articles
-
Interview 109 articles
-
java.lang 1 articles
-
Spring 17 articles
-
Hibernate 2 articles
-
regular expression 1 articles
-
shell 4 articles
-
http 1 articles
-
Programmer 62 articles
-
mysql 9 articles
-
mybatis 3 articles
-
Public Number 3 articles
-
data base 14 articles
-
Front end 7 articles
-
redis 6 articles
-
tool 3 articles
-
javascript 1 articles
-
nginx 2 articles
-
idea 9 articles
-
algorithm 1 articles
-
maven 1 articles
-
High concurrency 2 articles
-
GitHub 1 articles
-
docker 2 articles
Popular articles
-
<a href="https://blog.csdn.net/xiamiflying/article/details/80823987"> 17 Recommendation for programmer wallpaper </a> <p class="read">Reading Number <span>50097</span></p> </li> <li> <a href="https://blog.csdn.net/xiamiflying/article/details/59086201"> Eclipse How to view interface implementation class shortcuts </a> <p class="read">Reading Number <span>45703</span></p> </li> <li> <a href="https://blog.csdn.net/xiamiflying/article/details/80732400"> Java Ten Books Must Be Readed by Programmers </a> <p class="read">Reading Number <span>39384</span></p> </li> <li> <a href="https://blog.csdn.net/xiamiflying/article/details/81664229"> Java+MySQL Realization of Student Information Management System </a> <p class="read">Reading Number <span>30101</span></p> </li> <li> <a href="https://blog.csdn.net/xiamiflying/article/details/82914070"> Interpretation of Ali's Position Hierarchy (Attached) P Level I Detailed Requirements) </a> <p class="read">Reading Number <span>22263</span></p> </li> </ul> </div>
Recent comments
-
SpringBoot+MyBati...
weixin_43163331: Setting the properties of the original data injection profile was unsuccessful
-
Just came back from Ali's interview and got an offer.
angel_wei502: Hello! May I ask if Ali P6 needs a background check? Thanks very much!!!
-
Just came back from Ali's interview and got an offer.
angel_wei502: Hello! May I ask if Ali P6 needs a background check? Thanks very much!!!
-
Ten Books Must Be Readed by Java Programmers
weixin_42220532: Have read a Book
-
Wechat Scavenger Login Actual Warfare (with code)
qq_42169013: Written incomprehensible
<div class="aside-box"> <div id="kp_box_57" data-pid="57" data-report-view="{"mod":"kp_popu_57-77","keyword":""}" data-report-click="{"mod":"kp_popu_57-77","keyword":""}"><script type="text/javascript"> (function() { var s = "_" + Math.random().toString(36).slice(2); document.write('<div style="" id="' + s + '"></div>'); (window.slotbydup = window.slotbydup || []).push({ id: "u3163270", container: s }); })();
<div class="aside-box"> <div class="persion_article"> <div class="right_box footer_box csdn-tracking-statistics" data-report-view="{"mod":"popu_475"}"> <div class="contact-box" id="footer-contact-box"><div class="img-box"><img src="https://CSDN img.cn/pubfooter/images/images/csdn-cxrs.png "alt=" program life style="style=" padding: 6px; """""> > > <p class =" app-text "app-app-text" >app-app-text > > app ><< < </div> <div> < class = <div class = <div <div> <div class = <div> img-box-fr "><a href=" httttps://///blog.csdn.csdn.csdn.csdn.csdn.csdn.csdn/cnnews? Utm_sd= csdn_blanker "target="_f Ooter ""_football="_img=>>>> style=>>> style= <<<<///divheight> <<<<</div> <<<</div> < div> < div = < padding =" padding ="padding:::::::::::: <p//csdn/csdn img.cn/pubfooter/images/csdn-zx.Png"""Png"alt="CSDN="CSDN information""<<<</a><CSDN information"<<<</a><p class=<p class=<p class=<app-text>>> app-text>>>>>> CSDN= "16" xmlns = "http://www.w3" Org/2000/svg "height =" height = "height =" height = "16" height = "16" height = "16" xmlns = "xmlns = =" xmlns = = "xmlns =" http::///////////www.www.3.org/2000/svg ">><path d=" path d = "M2.162.162.162h11.666611.6666C14.4786 4.4782.572.572.282 2.282.167 1.286H2.167C1.167C1.522 141.131.424.12.714 V3.286C12.572.522.522.522.522.2zm-.164 3v1L8 10l6-4V5L8 8 10l6-4V5L8 9 2 003 5Z"fill"=“ # 5c55c55c "fill-rule=" odd ">> </path><<<<<<<<<<</svg><<<<<<<<<<<<<<</svg><a href><href><<<<<<<<<<<</svg><a href><<</svmaster><a webmaster@csdn.net target=""""""""""""""""""_target"""""""""""""">>>>>>>>>>>>> <class>><blank="blank>>blank>>>blank>>>> blank>> blank@blank@cfufusdn.cfuX="0,1024,1024"version="1.1"xmlns==="1.1 "Xmlns==" http://www.w3.org/2000/svg "p-id=" 232323556 "xmlns: xlink=" http://www.ww3.org/1999/xlink "> < defs > < defs > < defdefs > < defdefdefdefdefdefdefdefdefdefdefdefdefdefdefdefdefdefdefdefdefdefdefdef defdefdefdefdefdefdefdefdefdefdefdefdef defdefdefdefdefdefdefdef defdefdefdefdefdefdef defdefdefdefdefdefdef defdefdefdefdefdef defdefdefdefdefdefdef 90909090909090909696969696969696969696969696969696969696969696969696969696969696969696968686868686868686868686868686868686868686868686868686868686868686868686868686868686868939979771 1861865494717171717171545402 - 107.9471717171717171717171717171545493 93 - 8989898989898989898989898918618618618654545454545454949494717171717171717171717171717171717171717171717171717171717171717171715454545493 - 235493 - 898989545454545454 54545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454548888888888888888888888889802020202020202055555555555555555555555555555555555555555555555555555555555555555555555525252525257575757575757575757575757535390101-94 989898983297979776767676767676767676767676767676767676767676767676767676767676767664646 464868484612420.85858505230 21.70461757.7946175757575757575757575757575757575757575757575757575757575757575757570606060606060661.5040795757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757515151515151515151515721.7021.70705757575757575757575757575757575757575757 0,000,000,000,000,000,000-2,222,32.57991817 44.0530 1539 141.10300431 52.1416431 52.146262626262627 141.1031610518583.46161052 39.77647014 51.1462627114431 52.141616161616161616161616161616161616161616161616161616161616161414141 1414141 1462.146271715454545454545 45454545454545454545454545454545454545454545454545454545515151515151515151515195051515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151519595957175757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151svg >< a href="http://wpa.b.qq Com.com/cgi/wpa.php?Ln=1&key=XzgwMDE4MDE4MDE4MDE4MDEwN80ODE3MzVfODAwMTAwMTWMTAwMTAwMTAwMTAWWMTAWMTAXzJf "class=" qqcustomer_s "target="_blank blank"<span><span="txt">QQ customer service</span></a><</a><</em><p><em class=" width126><sVVVG="153801295171717171717153153153153153153153 53class=" 153>with12121212121212121212121212121212121212121261 "width = 17" style = viewBox = viewBox = hththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththththtww64.6019863 859.18313878 107.13744214 54282868686 868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686646464646464641414141414141414141414141414141414145454545454545454545454545454545454545454545454545454545454545454545454862828282828282828282868686868686868686868686870707070707070707070867086868686868686868686868686868686616v 1 1 1.676767676767676767676767676734919090909090909090909090909090808025252525252525252525565656846464646464646464797979797979797979797979797979797979797979797979797979797979797979797979797967676775753838383838383838389635696969696969696969696910.607399306060737399306060606073739903306060737373737373990303030303030303030330094784784343434343434343433030303030094784343434343434343430606060606060606060905095z-205.1303636262 6267-398.8705050505050505050505050505050505050505050505050505020202202246.777224246.77722424246.7772242424242424246.7772244444444444444444444444444444440 0 0 0 0 0 0 0 493.554444444444444444440 0 0 0 0 493.55444444444444444444050505050505050505262626262633333330.8505050505052626910 0 0 0 0 0 0 0 0 0-61 707070707010591000-1051051051051051059191000-61 0505050505050505050505912000 2000 2000 2000-61 05050505path > < / Path > < / Path > < / Path > < / SVG > < a href = < a h Refrefrefref= "http://///bbs.csdn.net/forums/services" target = ""_blankblankblankblankblankblankblankblankblankblank "> <span = <span = <span ="TXT"> > > > > > > > > > > > > > > > > > >>>>>>>>>>>>>>>><<<////////////></em><svvt = <153801381381381381381381381387429294 1531381381381381381381381381381381387429294"width="17"height="style="""""""""""""""""""""""""""""""""p-id=“ 23784 "Xxxmlns: Xlink = http://///www.www3.org/1999/xlink ><defs><defs><defs><defs><defs><defs><defs><defs><defs><defs><defs><defs><defs><style><style><style><style><style><defs><defs><defs><defs><defs><path d="M1031.29686868959595959595959595959595943.853333333395077h-863.707067676767901212719845717171717171717171717171717171717171717171717195 95 95 95 95 95 9 95 95 95 95 95 95 95 95 95 95 95 95 95 95 95 95 95 89898989898989898989898989898989898989898989898989898989898989898989898989898989898989877171717171717171717171717171717187878787878787878787888888888888888888888888888888888888888888888888888888888888888888888888888851515151511515151515151517171717177 9 9 99999999160176-99.757581818181343425c10 5 5 535353535353535351515143735 5 5 5-4 5353535353535151515151515151211211 998-10 5.5353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353537777236-56 5353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535352525252525235353535353535353535353535353535353595959595959595959595959595959595959595959595959595959595959595959595959595959595959595959595959595959595959595959595959595959595959595959577227.99 16077777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777454545797979000143.131313131313131313131313131357838353575757575757575757575757575757577575757575717171777777777777777777777777 4545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454543333 334848 9898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898981.95820 484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484843434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343432323232323232323232323232326262626262626262626262626262626255151515151515151515151515151455151514545454545454562626262626262626262626262626262626262626262626262626262626262434343431906- 5252525252525252525252525254545.06272377V296.062727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727271712121311617171717171712121311677777777777777777777777777777777040404040404040404040404040404040404040404048484848484848484844343436 6.436.630777777436.6307777777771717171717171717171717171519845626262626262626254545454540455c5c "<<<<<<<<<<<<</path>/svg>400-660" - 0108 <<<<</p><p><p><text-align style: center"<p><text-align style: center">>>> working hours 8 <text-align style 8-30-22:30-22> div class="bg-gray"><div class=><div class="feed_copyright right"><p><p><<a class="right-dotte"href="///www.csdn.net/company/index.html\#about ##### target target =////www.csdn.net/company/company/index.html #about"=""""_blank> About blank << a><a><a><ef EF The results of this study are as follows:1. Tml\#recruit "= # #recruit"""="""_blank"right-dotte>Recruitment <</a> <href="///www.csdn.net/company/contact.html #recruit"="right-dotte">> Recruitment <Recruitment </a> <href ="/////www.csdn.company/index.html.html.html.html HTML HTML"html "html"html"". Target ="_blank"class ="right-blank-right-dotte>>> advertising < <//////////////////////net/gather/A"target" = "_blank" class = "footer_baidu"> website map </a>> <footer_baidu>> website map <</a> <<</p> <p class = "fz12_baidu"> < p class = < p class = "fz12_baidu"> < a href = "https://zn.baidu.com/cse/height/height/blank" target = "" """""""_svg=" 13 "width =" 13 "width =" 14 "XM LNs =" 14"http://///www.w3.org/2000/svvg> <path = <path =" M8.392.392.013 c1.014.452 8s 1.303 1.017.47 2.98c-.833 1.962-3.876.942-3. 876.942s-1.122-.36-2.424-.072c-1.303.291-2.426.181-2.426.181s-1.523.037-1.957-1.888c-.434-1.927 1.52-2.982 1.666-3.161.145-.183 1.159-.873 1.81-1.963.653-1.09 2.608-1.9 62 3.984.181zm1.23 5.706V9.346H8.64v2.534h-.937s-.3-.044-.356-.285V9.33l-.925.015v2.518s.042.627.925.855h2.277zm-3.685.013V7.951l- .896-.014v1.295H3.987s-1.054.086-1.422 1.28c-.129.798.114 1.266.156 1.368.043.099.383.682 1.238.852h1.978zm-2.433-1.45c-.087-.286.013-.613.057-.741.042-.128.228-.427.61- .54h.855v1.948h-.797s-.555-.029-.725-.668zm6.877-8.775c-.143.909-.865 2.108-1.99 1.962-1.121-.144-1.375-1.16-1.267-2.179C7.214 1. 458 8.21.18 9.007.364c.796.18 1.52 1.235 1.374 2.143zm-4.09-.345c0 1.197-.68 2.164-1.52 2.164S3.25 3.36 3.25 2.162C3.25.967 3.932 0 4.77 0c.842 0 1.52.967 1.52 2.162zm4.8 54 2.09c1.34 0 1.701 1.309 1.701 1.743 0 .438.182 2.29-1.485 2.326-1.667.037-1.737-1.126-1.737-1.96 0-.874.179-2.11 1.52-2.11zm- 7.93.581c.045.045.398.398.253 2.217-1.2727 2.544C.427 7 7 7.704-.145.947.947.028 5.124c0 0.18-1.78 1.781.412-1.89.98-.085 1.7.986 1.774 1.6z "fill="\ #999 "fill-fill-fill=" odd ">><<<</path><<</svg> </Baiem> du-rule </search site <</hra><hththta><hthththttp:///////////////////www.miibeian.gov.cn/publish/query/indexFirst.action"target ="_blank“ Class="ml14">Beijing ICP Reserve 19004658 </a><</a></p> <class="fz12_baidu"<class="fz12_baidu"> 1999-2019 Beijing Innovation Lezhi Network Technology Co. </p></div></div> </div> </class><Div ="allow-info-box"><p> <p><p> <p><a href =<a href =<a < a < a < href =<a < a < p < a < a <href = <href =<https://csdmg.cni/csdni/cn/cdn/cdn png "target ="_blank“= "_blank"> Operation website archival information </a> <a> <em class= "width126"> <a href = <http:///www.cyberpolice.cn////////////////////"target blank> <blank>> <Internet 110 alarm services </span> </a> </a" htP://www.bjbao.org/"blank="<Internet> <Il>. Legal and Bad Information Reporting Center </span><</span> <</a> </a> <</a> <</p> <p> <a href = <a href = "http://www.12377.cn/" target = "_blank"> <span> <span> <span> <China Internet Reporting Center </span> <</span> </a> < a> <a href = <a href = "https://download.csdn.csdn.net/index.php/index.php/e///" style/"style//" style/>"Marge ="N-left:8px">> Parepareparepareparepare"https ://blog.csdn.net/blogdevteam/article/details/90369522"target="_blank">span="margin-left:8px">C </div> </div>