A brief discussion on the principle of WeChat QR code scanning login

A brief discussion on the principle of WeChat QR code scanning login

Preface

Hello everyone, I am programmer Amu!

When the web version of WeChat was first launched, countless people were amazed by its login method. There was no need to enter a username and password. Just open WeChat on your phone and scan to log in automatically.


Log in by scanning QR code on WeChat

Nowadays, as long as the application supports both PC and mobile terminals, it supports mobile app scanning code login, such as Taobao, 12306, etc. In principle, the QR code is just a piece of text encoding, so how does it achieve quick login? Today we will briefly analyze it!

text

If you scan the QR code with apps like WoChaCha, Alipay, or Sina Weibo, you will find that the QR code is parsed to the following URL:

https://login.weixin.qq.com/l/obsbQ-Dzdg==

Next, we will introduce each specific step of scanning code login in detail:


WeChat scan code login principle

As shown in the figure:

  • User A visits the WeChat web version, and the WeChat server generates a globally unique ID for this session. The obsbQ-Dzdg== in the above URL is this ID, but the system does not know who the visitor is at this time.
  • User A opens WeChat on his mobile phone and scans the QR code, and is prompted to confirm the login.
  • WeChat on the phone is logged in. After the user clicks to confirm the login, the WeChat client on the phone submits the WeChat account and the scanned ID to the server.
  • The server binds this ID to the WeChat account of user A and notifies the web version of WeChat that the WeChat account corresponding to this ID is user A. The web version of WeChat loads the WeChat information of user A. At this point, the entire process of scanning the code to log in is completed.

As for how the server notifies the web version of WeChat, there are only two ways:

If it is a CS application, the client uses polling to ask the server whether the login is successful.

  • If it is a BS application, the server can inform the client of successful login through CallBack.

Scanning QR code to log in seems magical, mainly because WeChat APP will do some extra operations that ordinary QR code software will not do when scanning its own code, that is, submitting the currently logged in WeChat and the scanned ID to the WeChat server. Similar applications also have functions such as scanning code to pay and scanning code to add public accounts.

Conclusion

The above is the principle of scanning code to log in. Do you understand it?

<<:  Very down-to-earth! Android 10 gets new features

>>:  Foreign media: Apple's 5G mobile phone release postponed to October due to the epidemic

Recommend

What are the strategies and models behind Qutoutiao’s crazy growth?

Qutoutiao launched its product in June 2016, and ...

Sometimes, it's a good thing when animals fight?

Produced by: Science Popularization China Author:...

Why do we need to find the black box in a plane crash? How important is it?

Experts in this article: Liu Yuxuan, Tianjin Fore...

How to optimize iOS projects?

1. Structure and Architecture 1.1 Structure There...

How did you come up with the title? 7 steps, from conception to hit product!

How did you come up with the title ? Do you recei...

Looks like a little "towboy", but it turns out to be a Devonian coral

When the weather is hot, I can't help missing...

Investment and Financing Analyst Training Class (Level-I) CIFA System Course

Investment and Financing Analyst Training Class (...

Detailed explanation of using Android HOOK tool Cydia Substrate

Cydia Substrate is a code modification platform. ...

In September, domestic 5G mobile phone shipments accounted for 70.5%

Recently, the China Academy of Information and Co...

Why do plant leaves change color?

When autumn comes, the leaves in the parks and on...