Parameter " >
<🎜><🎜>id<🎜><🎜><🎜><🎜> ist <🎜><🎜 ><🎜> <🎜>Die Container-ID des QR-Codes, der auf der Drittanbieterseite angezeigt wird<🎜><🎜><🎜><🎜><🎜>appid<🎜><🎜><🎜>< 🎜> ist <🎜><🎜 ><🎜><🎜>Die eindeutige Identifikation des Antrags wird nach Einreichung des Antrags zur Prüfung auf der offenen WeChat-Plattform erhalten<🎜><🎜><🎜><🎜>< 🎜>Bereich<🎜><🎜><🎜>< 🎜>Ja<🎜><🎜><🎜><🎜> Anwendungsautorisierungsbereich, mit mehreren durch Kommas (,) getrennten Bereichen, Webanwendungen müssen derzeit nur ausgefüllt werden snsapi_login<🎜><🎜><🎜>< tr><🎜><🎜>redirect_uri<🎜><🎜><🎜><🎜> ist die <🎜><🎜><🎜><🎜> Weiterleitungsadresse, die erfordert UrlEncode<🎜><🎜><🎜> <🎜><🎜>Staat<🎜><🎜><🎜><🎜> Nein an Dritte. Dieser Parameter kann verwendet werden, um CSRF-Angriffe (Cross-Site-Request-Forgery-Angriffe) zu verhindern. Es wird empfohlen, dass Dritte diesen Parameter zur Überprüfung auf eine einfache Zufallszahl plus Sitzung festlegen <🎜> <🎜>Stil<🎜><🎜><🎜><🎜>Nein<🎜><🎜><🎜><🎜> bietet die Optionen „Schwarz“ und „Weiß“ und die Standardeinstellung ist Schwarz Textbeschreibung. Weitere Informationen finden Sie in den häufig gestellten Fragen am Ende des Dokuments. Definieren Sie Stillinks. Dritte können den Standardstil entsprechend den tatsächlichen Anforderungen überschreiben. Einzelheiten finden Sie in den FAQ am Ende des Dokuments<🎜><🎜><🎜><🎜><🎜>Parameterbeschreibung
Schritt 2: Access_token über Code abrufen
Access_token über Code abrufen
https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code
Parameterbeschreibung
Parameter | Allgemeines Benutzergeschlecht, 1 ist männlich, 2 ist weiblich
Heim
![]() ![]() ![]() PHP implementiert die Entwicklung der Anmeldeautorisierung für WeChat-Webseiten
php
开发
授权
Dieser Artikel stellt hauptsächlich die Implementierung der WeChat-Webseiten-Anmeldeautorisierung vor. Er hat einen gewissen Referenzwert. Jetzt kann ich ihn mit allen teilen, die ihn benötigen. WeChat open Plattform und die Öffentlichkeit Unterschiede zwischen Plattformen 1 Öffentliche Plattformen sind für normale Benutzer wie Self-Media und Medien gedacht und werden natürlich von Betreibern offizieller WeChat-Konten verwendet Das Team oder Unternehmen verfügt über die Stärke, einige Inhalte zu entwickeln und kann auch Schnittstellen auf der öffentlichen Plattform aufrufen, z. B. benutzerdefinierte Menüs, automatische Antworten und Abfragefunktionen. Derzeit tun die meisten WeChat dies, nachdem sie die Zertifizierung bestanden haben. mp.weixin.qq.com
open.weixin.qq.com
Die öffentliche Plattform ist das Verwaltungs- und Entwicklungs-Backend für Dienstkonto-Abonnementkonten. Einfach ausgedrückt besteht die Entwicklungsplattform darin, den Inhalt der auf dem Mobiltelefon installierten Software mit einem Klick an den Freundeskreis weiterzugeben Der folgende Drittanbieter Die Anmeldung basiert auf der offenen Plattform (open.weixin.qq.com). Funktionen
VorbereitungsarbeitenWebsite-Anwendung WeChat-Anmeldung ist ein von WeChat OAuth2.0 autorisiertes Anmeldesystem basierend auf dem OAuth2.0-Protokollstandard. Bevor Sie WeChat OAuth2 durchführen, registrieren Sie ein Entwicklerkonto auf der offenen WeChat-Plattform und erhalten Sie die entsprechende AppID und AppSecret Nachdem Sie sich angemeldet und die Prüfung bestanden haben, können Sie den Zugangsprozess starten. Beschreibung des AutorisierungsprozessesMit der autorisierten WeChat OAuth2.0-Anmeldung können WeChat-Benutzer ihre WeChat-Identität verwenden, um sich sicher bei Anwendungen oder Websites Dritter anzumelden, und der WeChat-Benutzer autorisiert die Anmeldung Dritte, die auf WeChat OAuth2.0 zugegriffen haben Nach der Anwendung kann der Dritte die Anmeldeinformationen für die Schnittstelle des Benutzers (access_token) abrufen und mit dem access_token die Schnittstelle für die Autorisierungsbeziehung der offenen Plattform von WeChat aufrufen und so die grundlegenden offenen Informationen von WeChat-Benutzern erhalten Unterstützung der Benutzer bei der Implementierung grundlegender offener Funktionen. Die autorisierte WeChat OAuth2.0-Anmeldung unterstützt derzeit den Authorization_Code-Modus, der für die serverseitige Anwendungsautorisierung geeignet ist. Der Gesamtprozess dieses Modells ist: 1. Der Dritte initiiert eine WeChat-Autorisierungs-Anmeldeanfrage. Nachdem der WeChat-Benutzer die Autorisierung der Drittanbieteranwendung zulässt, startet WeChat die Anwendung oder leitet zur Drittanbieteranwendung weiter. Party-Website und bringen Sie den temporären Autorisierungscode-Parameter mit. 2. Fügen Sie AppID und AppSecret über den Code-Parameter hinzu und tauschen Sie access_token aus. Access_token-Sequenzdiagramm abrufen: Autorisierung für die Nutzung durch Dritte Website-Anwendungen Bitte beachten Sie vor dem Anmelden, dass Sie über den entsprechenden Webseiten-Autorisierungsbereich (scope=snsapi_login) verfügen. Sie können den folgenden Link auf dem PC öffnen:https://open.weixin.qq.com/connect /qrconnect?appid=APPID&redirect_uri= REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect
https://passport.yhd.com/wechat/login.doNach dem Öffnen generiert der Yihaodian den Status Parameter und springen Sie zu https://open.weixin.qq.com/connect/qrconnect?appid=wxbdc5610cc59c1631&redirect_uri=https%3A%2F%2Fpassport.yhd.com%2Fwechat%2Fcallback.do&response_type=code&scope=snsapi_login &state=. 3d6be0a4035d839573b04816624a415e#wechat_redirect
https://passport.yhd.com /wechat/callback.do ?code=CODE&state=3d6be0a4035d839573b04816624a415e Die zweite Möglichkeit, den Code zu erhalten, unterstützt die Website dabei, den WeChat-Login-QR-Code in ihre eigene Seite einzubetten, und Der Benutzer verwendet WeChat, um den Code zur Autorisierung zu scannen. Anschließend wird der Code über JS an die Website zurückgegeben. Der Hauptzweck der JS WeChat-Anmeldung: Die Website hofft, dass Benutzer die Anmeldung innerhalb der Website abschließen können, ohne zur WeChat-Domäne springen zu müssen, um sich anzumelden und dann zurückzukehren, um die Sprachkompetenz und Erfolgsquote zu verbessern WeChat-Login. So implementieren Sie JS für die in die Website eingebettete QR-Code-WeChat-Anmeldung: Schritt 1: Führen Sie zunächst die folgende JS-Datei in die Seite ein (https wird unterstützt): Schritt 2: Instanzieren Sie das folgende JS-Objekt, bei dem eine WeChat-Anmeldung erforderlich ist:Parameter
Nach dem Login kopieren
<🎜>Ist es notwendig<🎜><🎜><🎜><🎜> <🎜>Beschreibung<🎜><🎜><🎜><🎜> | ||||||||||||||||||||||||||||||||||||||||||||
| Ist es notwendig |
| |||||||||||||||||||||||||||||
appid | Ja | Die eindeutige Identifikation des Antrags wird erhalten, nachdem der Antrag zur Prüfung auf der offenen WeChat-Plattform eingereicht wurde | |||||||||||||||||||||||||||||
geheim | ist < /td> | Der Anwendungsschlüssel AppSecret wird erhalten, nachdem der Antrag zur Überprüfung auf der offenen WeChat-Plattform eingereicht wurde | |||||||||||||||||||||||||||||
Code | ist | Füllen Sie die im ersten Schritt erhaltenen Codeparameter aus | |||||||||||||||||||||||||||||
grant_type < /td> | Ja | Geben Sie den Autorisierungscode ein |
Beschreibung
Parameter |
参数 | 是否必须 | 说明 |
appid | 是 | 应用唯一标识 |
grant_type | 是 | 填refresh_token |
refresh_token | 是 | 填写通过access_token获取到的refresh_token参数 |
access_token<🎜>
Anmeldeinformationen für Schnittstellenaufrufe<🎜>
Expires_in<🎜>
access_token Interface Call Voucher Timeout, Einheit (Sekunde)<🎜> < td>
refresh_token<🎜>
Benutzeraktualisierungs-Access_token <🎜>< /tr>
openid<🎜>
Die eindeutige Kennung des autorisierten Benutzers <🎜>
scope<🎜>< td>
Benutzerautorisierungsbereich, getrennt durch Kommas (,)<🎜>
unionid<🎜>
Dieses Feld wird erst angezeigt, nachdem der Benutzer das offizielle Konto an das WeChat Open Platform-Konto gebunden hat. <🎜><🎜>Beispiel für eine Fehlerrückgabe: <🎜><🎜><🎜><🎜><🎜>Gültigkeitsdauer des Zugriffstokens aktualisieren<🎜><🎜 >access_token ist der aufrufende Berechtigungsnachweis für den Aufruf der Autorisierungsbeziehungsschnittstelle. Wenn das access_token abläuft, können Sie zum Aktualisieren zwei access_token-Aktualisierungsergebnisse verwenden: <🎜>< 🎜>1. Wenn das access_token abgelaufen ist, wird durch die Ausführung von „refresh_token“ ein neues access_token mit einem neuen Timeout abgerufen aktualisiert werden, was dem Fortfahren des Zeitraums access_token entspricht. <🎜><🎜>Refresh_token hat eine lange Gültigkeitsdauer (30 Tage). Wenn Refresh_token abläuft, muss der Benutzer es erneut autorisieren. <🎜><🎜>Anforderungsmethode<🎜><🎜>Nachdem Sie den Code des ersten Schritts erhalten haben, fordern Sie den folgenden Link für restart_token an: <🎜><🎜>https://api.weixin.qq.com/sns/ oauth2/ REFRESH_TOKEN?appid=APPID&grant_type=refresh_token&refresh_token=REFRESH_TOKEN<🎜><🎜>Parameterbeschreibung<🎜>
< tr><🎜>Parameter<🎜><🎜> | <🎜>Ist es erforderlich<🎜><🎜>< /td> | <🎜>Beschreibung<🎜><🎜> |
appid<🎜> | is<🎜> | Eindeutige Kennung anwenden<🎜> |
grant_type<🎜> | Ja<🎜> | Füllen Sie „refresh_token“ aus<🎜> |
refresh_token<🎜> | is<🎜> | < p style="text-align:left;">Füllen Sie den über access_token erhaltenen Parameter „refresh_token“ aus<🎜> |
Rückgabeanweisungen
Korrekte Rückgabe:
{ <br/>"access_token":"ACCESS_TOKEN", <br/>"expires_in":7200, <br/>"refresh_token":"REFRESH_TOKEN", <br/>"openid":"OPENID", <br/>"scope":"SCOPE" <br/>}
< p style="text-align:center;">Parameter
| Beschreibung | ||||||||||||
access_token | Anmeldeinformationen für Schnittstellenaufrufe | ||||||||||||
expires_in | < p style="text-align:left;">Zeitüberschreitung der Anmeldeinformationen für den Zugriff auf die access_token-Schnittstelle, Einheit (Sekunde) | ||||||||||||
refresh_token | Benutzeraktualisierung access_token | ||||||||||||
openid | Eindeutige Identifizierung autorisierter Benutzer | ||||||||||||
scope | Vom Benutzer autorisierter Bereich, verwenden Sie Kommas ( ,) getrennt |
Beispiel für Fehlerrückgabe:
Hinweis:1. Appsecret ist der von der Anwendungsschnittstelle verwendete Schlüssel, der zu risikoreichen Folgen wie dem Verlust von Anwendungsdaten und Anwendungsbenutzerdaten führen kann. Wenn er auf dem Client gespeichert wird, ist es sehr wahrscheinlich, dass er gestohlen wird (z. B. Dekompilierung, um das Appsecret zu erhalten);
2. Das access_token ist der Berechtigungsnachweis, mit dem der Benutzer Drittanbieteranwendungen zum Initiieren von Schnittstellenaufrufen autorisiert (entspricht dem Anmeldestatus des Benutzers). Der Client. Benutzerdatenlecks und Benutzer-WeChat-bezogene Probleme können nach böswilliger Beschaffung des access_token auftreten -Party-Anwendungen. Es wird nur zum Aktualisieren des access_token verwendet, aber wenn es durchgesickert ist, entspricht es dem Durchsickern des access_token, und das Risiko ist das gleiche wie oben. Es wird empfohlen, das Geheimnis und die Benutzerdaten (z. B. access_token) auf dem App-Cloud-Server abzulegen und die Anforderung über die Cloud-Übertragungsschnittstelle aufzurufen.Schritt 3: Rufen Sie die Schnittstelle über access_token auf
授权作用域(scope) | 接口 | 接口说明 |
snsapi_base | /sns/oauth2/access_token | 通过code换取access_token、refresh_token和已授权scope |
/sns/oauth2/refresh_token | 刷新或续期access_token使用 | |
/sns/auth | 检查access_token有效性 | |
snsapi_userinfo | /sns/userinfo | 获取用户个人信息 |
snsapi_base<🎜>
< tr>< /tr> Autorisierungsbereich<🎜> | Schnittstelle< /strong><🎜> | Schnittstellenbeschreibung<🎜> |
/ sns/oauth2/access_token <🎜> | Austauschcode für Access_token, Refresh_token und autorisierten Bereich<🎜> | |
< p style="text-align:left;">/sns/oauth2/refresh_token<🎜> | Aktualisieren oder fortfahren Zeitraum access_token verwendet <🎜> | |
/sns/auth<🎜> | Gültigkeit des access_token prüfen<🎜> | |
snsapi_userinfo<🎜> | /sns/userinfo<🎜> | Persönliche Benutzerinformationen abrufen< 🎜> |
Unter diesen gehört snsapi_base zur Basisschnittstelle. Wenn die Anwendung bereits über andere Bereichsberechtigungen verfügt, verfügt sie standardmäßig über die Berechtigungen von snsapi_base. Durch die Verwendung von snsapi_base kann die mobile Webseitenautorisierung den Vorgang des Springens zur Autorisierungs-Anmeldeseite zum Anfordern der Benutzerautorisierung umgehen und mit dem temporären Autorisierungsticket (Code) direkt zur Drittanbieter-Webseite springen. Dadurch wird der Benutzer jedoch autorisiert Bereich (Bereich) nur snsapi_base , was dazu führt, dass Daten und Grundfunktionen, für die eine Benutzerautorisierung erforderlich ist, nicht abgerufen werden können.
FAQ
1. Was ist ein vorläufiges Autorisierungsticket (Code)?
Antwort: Ein Dritter muss den Code verwenden, um den Access_token zu erhalten. Das Timeout des Codes beträgt 10 Minuten. Ein Code kann nur einmal erfolgreich gegen den Access_token ausgetauscht werden. Der temporäre und einmalige Charakter des Codes gewährleistet die Sicherheit der autorisierten WeChat-Anmeldung. Dritte können die Sicherheit ihrer eigenen autorisierten Anmeldungen durch die Verwendung von https und Statusparametern weiter erhöhen.
2. Was ist der Berechtigungsumfang?
Antwort: Der Autorisierungsbereich (Bereich) stellt die von Benutzern autorisierten Schnittstellenberechtigungen für Dritte dar. Anwendungen von Drittanbietern müssen bei der WeChat Open Platform die Erlaubnis zur Verwendung des entsprechenden Bereichs beantragen und dann die beschriebene Methode verwenden im Dokument, um Benutzern die Autorisierung zu ermöglichen. Nach der Benutzerautorisierung kann die Schnittstelle erst nach Erhalt des entsprechenden access_token aufgerufen werden.
3. Welche Rolle spielt das Stilfeld im in die Website eingebetteten WeChat-Login-JS-Code?
Antwort: Der Farbstil der Drittanbieterseite kann hell oder dunkel sein. Wenn die Drittanbieterseite einen hellen Hintergrund hat, sollte das Stilfeld einen „Schwarz“-Wert bereitstellen (oder auch nicht). Schwarz ist der Standardwert), dann ist der entsprechende WeChat-Anmeldetextstil schwarz. Die damit verbundenen Effekte sind wie folgt:
Wenn der Wert „weiß“ angegeben wird, wird die entsprechende Textbeschreibung in Weiß angezeigt, passend für dunkle Hintergründe. Die relevanten Auswirkungen sind wie folgt:
4. Welche Rolle spielt das href-Feld im WeChat-Login-JS-Code mit dem in die Website eingebetteten QR-Code?
A: Wenn ein Dritter der Meinung ist, dass der vom WeChat-Team bereitgestellte Standardstil nicht mit seinem eigenen Seitenstil übereinstimmt, kann er eine eigene Stildatei bereitstellen, um den Standardstil zu überschreiben. Wenn ein Dritter beispielsweise der Meinung ist, dass der Standard-QR-Code zu groß ist, kann er relevante Dateien im CSS-Stil bereitstellen und die Linkadresse in das Href-Feld
.impowerBox .qrcode {width:200px;}<br/>.impowerBox .title {display: none;}<br/>.impowerBox .info {width: 200px;}<br/>.status_icon {display
:
none}<br/>.impowerBox .status {text-align: center;}
< eingeben 🎜>
< /table >Rückgabeanweisungen
Korrektes Json-Rückgabeergebnis:
{ <br/>"openid":"OPENID",<br/>"nickname":"NICKNAME",<br/>"sex":1,<br/>"province":"PROVINCE",<br/>"city":"CITY",<br/>"country":"COUNTRY",<br/>"headimgurl":"http://wx.qlogo.cn/mmopen/g3MonUZtNHkdmzicIlibx6iaFqAc56vxLSUfpb6n5WKSYVY0ChQKkiaJSgQ1dZuTOgvLLrhJbERQQ4eMsv84eavHiaiceqxibJxCfHe/0",<br/>"privilege":[<br/>"PRIVILEGE1", <br/>"PRIVILEGE2"<br/>],<br/>"unionid": " o6_bmasdasdsad6_2sgVt7hMZOPfL"<br/><br/>}
Parameter | Ist es notwendig
| Beschreibung<🎜> | |||||||||
access_token<🎜> | Ja<🎜> | Anmeldeinformationen<🎜> | |||||||||
openid<🎜> | Ja< 🎜 > | Die Identifikation normaler Benutzer, eindeutig für das aktuelle Entwicklerkonto<🎜> |
Parameter
| < strong>Beschreibung | ||||||||||||||||||||
openid | < p style="text-align:left;">Die Identifikation normaler Benutzer, eindeutig für das aktuelle Entwicklerkonto | ||||||||||||||||||||
Spitzname | Normaler Benutzer-Spitzname | ||||||||||||||||||||
Geschlecht | Allgemeines Benutzergeschlecht, 1 ist männlich, 2 ist weiblich | ||||||||||||||||||||
province
| Normal Provinz ausgefüllt im Benutzerprofil<🎜> | ||||||||||||||||||||
Stadt<🎜> | Stadt ausgefüllt mit den persönlichen Daten normaler Benutzer<🎜> | ||||||||||||||||||||
Land< 🎜 > | Land wie China ist CN<🎜> | ||||||||||||||||||||
headimgurl<🎜> | Benutzeravatar, der letzte Wert stellt die Größe des quadratischen Avatars dar (0, 46 , 64, 96, 132 Werte sind optional, 0 stellt einen 640*640 Quadrat großen Avatar dar), dieses Element ist leer, wenn der Benutzer keinen Avatar hat <🎜> | ||||||||||||||||||||
privileg<🎜> | Informationen zu Benutzerprivilegien, JSON-Array, z. B. WeChat Woka-Benutzer ist (chinaunicom)<🎜> | ||||||||||||||||||||
unionid<🎜> | Einheitliche Benutzeridentifikation. Für Anwendungen unter einem WeChat-Konto der offenen Plattform ist die Unionid desselben Benutzers eindeutig. <🎜> |
Schnittstellenname<🎜 >
Frequenzlimit<🎜>
Austauschcode für access_token<🎜>
10.000/Minute<🎜>
Zugriffstoken aktualisieren<🎜>
50.000/Minute <🎜>
Grundlegende Benutzerinformationen abrufen<🎜>
50.000/Minute<🎜>
代码示例:
第三方发起微信授权登录请求,微信用户允许授权第三方应用后,微信会拉起应用或重定向到第三方网站,并且带上授权临时票据code参数;
通过code参数加上AppID和AppSecret等,通过API换取access_token;
通过access_token进行接口调用,获取用户基本数据资源或帮助用户实现基本操作。
Login.php如下:
1 |
|
1 |
|
1 |
|
1 |
|
header(
'location:'.
$url);
验证处理如下:
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
微信第三方登录(静默授权和非静默授权)
用户在微信客户端中访问第三方网页,公众号可以通过微信网页授权机制,来获取用户基本信息,进而实现业务逻辑。
微信的授权登录在日常应用中应用的非常广泛,越来越多的平台支持用户使用微信进行授权第三方登录
使用微信授权登录有哪些优势/好处;
1、用户量足够大,基本所有用户都会有微信,登录起来比较方便快捷;
2、微信作为一个开放平台,为众多公众号/服务开放了许多服务接口,让公众号能够为自己的用户提供更加个性、更加优质的产品服务;
open id 和 union id ,这两个id有什么区别;
1、openid:在关注者与公众号产生消息交互后,公众号可获得关注者的openid,同一个用户,在不同公众号或移动应用下对应有不同open id标识;
2、union id:同一个用户,在不同公众号或移动应用下unionID相同;前提是,如若需要做多个公众号以及移动应用账户互通,得到唯一身份标识union id,则需要将多个公众号或移动应用在微信开放平台进行绑定,然后我们才能给拿到unionid;
所以,如果某个应用或者服务,有联合登录甚至多个公众应用多账户互通,可以采用union id来进行账户体系的用户识别与合并;即微信平台可以通过union id 来进行基于多个公众号之间的账户体系互通与识别合并;
微信联合登录是怎么登录的,有几种登录方式;微信联合登录和微信授权登录【授权登录(非静默授权)与静默授权】
微信联合登录;也就是我们常用的微信移动端/PC端之间的扫码登录,PC端用微信扫码登录,微信移动端确认授权登录后,应用可以从微信拿到用户的open id或union id,将微信获取的用户信息与自己账户体系中的用户身份进行关联;
授权登录:需要用户确认登录,这样可以通过用户的个人确认,获取用户全面的信息,无论是否关注相关微信公众号等都可以获取。
静默授权不需要用户确认,只需要用户访问某个网页,属于嵌套在普通网页里的授权形式,但是只能获取到用户的唯一标示openid和union id,无法拿到用户的微信头像、微信名称等个人信息,对于用户的简单认证还是很有用的。
如何通过微信账户体系来做多应用、多平台之间的账户互通体系;如果某个服务同时分布在多个公众号中,账户体系如何建立;如何做到用户身份唯一识别;
1)、同一用户不同公众号/应用下open id不同,同一用户不同公众号/应用下unionid相同;
2)、建立应用账户体系时,通过union来进行多应用/平台之间的用户账户体系识别与合并;
3)、多应用/平台建立账户体系时,需要做到唯一user id对应唯一union id;
Für einen bestimmten Dienst, einschließlich mobiler App , PC-Webseite und öffentlichem Kontodienst, wie ist der Datenflussprozess für Benutzer, die sich mit WeChat-Autorisierung anmelden
1. Der Benutzer autorisiert den mobilen App-Dienst über die Schnittstelle. Wenn die ID zu diesem Zeitpunkt nicht in der Datenbank gefunden wird, wird sie als neu identifiziert Benutzer und eine Benutzer-ID werden direkt erstellt. Die eindeutige Benutzer-ID entspricht der Gewerkschafts-ID. 2 Der Benutzer scannt den QR-Code auf der PC-Seite von WeChat, um die gemeinsame Anmeldung zu autorisieren, um den PC-seitigen Dienst zu erhalten ; Der Anwendungsdienst kann die Gewerkschafts-ID über die Schnittstelle abrufen. Wenn diese ID in der Datenbank gefunden wird, wird das PC-Anmeldekonto mit dem zuvor erstellten eindeutigen Benutzer-ID-Konto zusammengeführt Der Benutzer kann sich beim öffentlichen Kontodienst anmelden, indem er dem öffentlichen Konto des Dienstes folgt und ihn mit WeChat autorisiert. Der Anwendungsserver kann die Gewerkschafts-ID des Benutzers zu diesem Zeitpunkt über die Schnittstelle abrufen , das vom offiziellen Konto angemeldete Konto wird mit dem zuvor erstellten eindeutigen Benutzer-ID-Konto zusammengeführtErklärung des Unterschieds zwischen den beiden Bereichen der Webseitenautorisierung
: 1. Die mit snsapi_base initiierte Autorisierung der Anmeldewebseite wird zum Abrufen der Einstiegsseite verwendet. Die OpenID des Benutzers wird stillschweigend autorisiert und springt automatisch zur Rückrufseite. Was der Benutzer wahrnimmt, ist, dass er direkt die Rückrufseite aufruft (oft eine Geschäftsseite).
2. Stille Autorisierung, die mit snsapi_userinfo initiiert wird, um sie abzurufen die grundlegenden Informationen des Benutzers. Diese Art der Autorisierung erfordert jedoch die manuelle Zustimmung des Benutzers. Da der Benutzer zugestimmt hat, können die grundlegenden Informationen des Benutzers nach der Autorisierung ohne Aufmerksamkeit abgerufen werden. Stille Autorisierung in besonderen Szenarien:Für Benutzer, die dem offiziellen Konto gefolgt sind, wenn der Benutzer über die Sitzung oder benutzerdefinierte Sitzung des offiziellen Kontos zutritt Menü Die Webautorisierungsseite dieses offiziellen Kontos wird stillschweigend autorisiert und der Benutzer ist sich dessen nicht bewusst, auch wenn der Bereich snsapi_userinfo ist.
Webseiten-Autorisierungsprozess:1
, leiten Sie den Benutzer zur Eingabe der Autorisierung Seite, um der Autorisierung zuzustimmen, Code abrufen Stellen Sie sicher, dass das öffentliche WeChat-Konto über den Autorisierungsbereich (Bereichsparameter) verfügt, und führen Sie den Benutzer zur Autorisierungsseite
Referenzlink:Bereich ist snsapi_baseHinweis: Appid, Redirect_uri, Status müssen mit dem Backend ausgehandelt werdenhttps://open.weixin .qq.com/connect/oauth2 /authorize?appid="+wx_appid+"&redirect_uri="+api.wx_reg+"&response_type=code&scope=snsapi_login,snsapi_userinfo
&state=1,0#wechat_redirectscope ist snsapi_userinfo
https://open.weixin.qq.com/connect/oauth2/authorize?appid="+wx_appid+"&redirect_uri="+api.wx_reg+"&response_type=code&scope=snsapi_base,snsapi_userinfo&state= 1,0#wechat_redirect
Nachdem der Benutzer der Autorisierung zugestimmt hat
, Austauschcode für Webseitenautorisierung access_token (Backend-Vorgang) Redirect_uri auf der URL, die die Seite enthält springt zurück zu /?code=CODE&state=STATE. Code
Was durch Code ausgetauscht wird, ist das Webseiten-Autorisierungs-Access_token. Wenn der Umfang der Webseiten-Autorisierung snsapi_base ist, wird in diesem Schritt beim Abrufen des Webseiten-Autorisierungs-Access_tokens auch die OpenID und die Webseite im snsapi_base-Stil abgerufen Der Autorisierungsprozess ist soweit abgeschlossen. 3: Persönliche Daten sind erforderlich. Der Hintergrund erhält den Wert über den Code und gibt ihn zur Operation an das Frontend zurück Verwandte Empfehlungen:PHP implementiert WeChat-Vorlagennachrichten-Push
Das obige ist der detaillierte Inhalt vonPHP implementiert die Entwicklung der Anmeldeautorisierung für WeChat-Webseiten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

Dieses Tutorial zeigt, wie XML -Dokumente mit PHP effizient verarbeitet werden. XML (Extensible Markup-Sprache) ist eine vielseitige textbasierte Markup-Sprache, die sowohl für die Lesbarkeit des Menschen als auch für die Analyse von Maschinen entwickelt wurde. Es wird üblicherweise für die Datenspeicherung ein verwendet und wird häufig verwendet

Wenn Sie ein erfahrener PHP-Entwickler sind, haben Sie möglicherweise das Gefühl, dass Sie dort waren und dies bereits getan haben. Sie haben eine beträchtliche Anzahl von Anwendungen entwickelt, Millionen von Codezeilen debuggt und eine Reihe von Skripten optimiert, um op zu erreichen

JWT ist ein offener Standard, der auf JSON basiert und zur sicheren Übertragung von Informationen zwischen Parteien verwendet wird, hauptsächlich für die Identitätsauthentifizierung und den Informationsaustausch. 1. JWT besteht aus drei Teilen: Header, Nutzlast und Signatur. 2. Das Arbeitsprinzip von JWT enthält drei Schritte: Generierung von JWT, Überprüfung von JWT und Parsingnayload. 3. Bei Verwendung von JWT zur Authentifizierung in PHP kann JWT generiert und überprüft werden, und die Funktionen und Berechtigungsinformationen der Benutzer können in die erweiterte Verwendung aufgenommen werden. 4. Häufige Fehler sind Signaturüberprüfungsfehler, Token -Ablauf und übergroße Nutzlast. Zu Debugging -Fähigkeiten gehört die Verwendung von Debugging -Tools und Protokollierung. 5. Leistungsoptimierung und Best Practices umfassen die Verwendung geeigneter Signaturalgorithmen, das Einstellen von Gültigkeitsperioden angemessen.

Eine Zeichenfolge ist eine Folge von Zeichen, einschließlich Buchstaben, Zahlen und Symbolen. In diesem Tutorial wird lernen, wie Sie die Anzahl der Vokale in einer bestimmten Zeichenfolge in PHP unter Verwendung verschiedener Methoden berechnen. Die Vokale auf Englisch sind a, e, i, o, u und sie können Großbuchstaben oder Kleinbuchstaben sein. Was ist ein Vokal? Vokale sind alphabetische Zeichen, die eine spezifische Aussprache darstellen. Es gibt fünf Vokale in Englisch, einschließlich Großbuchstaben und Kleinbuchstaben: a, e, ich, o, u Beispiel 1 Eingabe: String = "TutorialPoint" Ausgabe: 6 erklären Die Vokale in der String "TutorialPoint" sind u, o, i, a, o, ich. Insgesamt gibt es 6 Yuan

Statische Bindung (statisch: :) implementiert die späte statische Bindung (LSB) in PHP, sodass das Aufrufen von Klassen in statischen Kontexten anstatt Klassen zu definieren. 1) Der Analyseprozess wird zur Laufzeit durchgeführt.

Was sind die magischen Methoden von PHP? Zu den magischen Methoden von PHP gehören: 1. \ _ \ _ Konstrukt, verwendet, um Objekte zu initialisieren; 2. \ _ \ _ Destruct, verwendet zur Reinigung von Ressourcen; 3. \ _ \ _ Call, behandeln Sie nicht existierende Methodenaufrufe; 4. \ _ \ _ GET, Implementieren Sie den dynamischen Attributzugriff; 5. \ _ \ _ Setzen Sie dynamische Attributeinstellungen. Diese Methoden werden in bestimmten Situationen automatisch aufgerufen, wodurch die Code -Flexibilität und -Effizienz verbessert werden.
