Heim WeChat-Applet WeChat-Entwicklung Ausführliche Erläuterung der Verwendung der .NET WeChat-Entwicklung auf dem PC zur Implementierung von Scancode-Registrierungs- und Anmeldefunktionen

Ausführliche Erläuterung der Verwendung der .NET WeChat-Entwicklung auf dem PC zur Implementierung von Scancode-Registrierungs- und Anmeldefunktionen

Apr 26, 2017 pm 02:51 PM
pc

In diesem Artikel werden hauptsächlich relevante Informationen zur Implementierung der von .NET WeChat entwickelten WeChat-Code-Scanning-Funktion vorgestellt. Sie ist sehr gut und hat Referenzwert.

1. Vorwort

Lassen Sie mich zunächst feststellen, dass der Schwerpunkt dieses Artikels hauptsächlich auf der Implementierungsidee und dem Datenbankdesign liegt um die Idee zu zeigen. Wenn strenge Anforderungen an die Codeeffizienz bestehen, kopieren Sie die Elemente nicht.

Ich glaube, dass jeder, der WeChat entwickelt hat, viele Autorisierungen durchgeführt hat, aber im Allgemeinen führen wir mehr Autorisierungen für mobile Websites durch, um genau zu sein, wir machen es unter WeChat einer Autorisierung. Ein Problem, auf das ich heute gestoßen bin, ist, dass das Projekt WeChat und PC unterstützt und die Registrierung offen ist. Es ist erforderlich, dass Sie sich nach der Registrierung auf der PC-Seite oder auf der WeChat-Seite auf der anderen Seite anmelden können. Mit anderen Worten: Egal ob PC oder WeChat: „Du bist du“ (irgendwie relevant).

2. Auf der Suche nach Lösungen

Auf traditionelle Weise kann sich WeChat vollständig durch Autorisierung registrieren. Aber auf der PC-Seite besteht die herkömmliche Methode lediglich darin, Ihre Mobiltelefonnummer, E-Mail-Adresse usw. einzugeben. Wenn Sie sich auf diese Weise registrieren, treten folgende Probleme auf

1 Ich autorisiere zuerst die Registrierung auf WeChat. Wenn ich mich dann am PC anmelden möchte, muss ich mich noch registrieren.

Die Lösung für dieses Problem kann sein: Nachdem WeChat die Registrierung autorisiert hat, „zwingt“ es Benutzer, grundlegende Informationen wie Mobiltelefonnummer und E-Mail einzugeben. Auf diese Weise können wir das Konto und das Passwort generieren, damit sich der Benutzer auf irgendeine Weise am PC anmelden kann. Verwenden Sie beispielsweise den Spitznamen des Benutzers als Kontonummer, die Mobiltelefonnummer als Passwort usw.

Nachteile: Die Benutzererfahrung ist nicht gut und es bestehen Sicherheitsrisiken. Schließlich sind Ihr WeChat-Spitzname, Ihre E-Mail-Adresse oder Ihre Mobiltelefonnummer offengelegt.

2. Wenn ich mich zuerst am PC registriere, wie verknüpfe ich die mobile Version bei der Autorisierung von WeChat?

Natürlich gibt es für jedes Problem eine Lösung . Die Idee ist wie folgt:

Option 1: Nachdem sich der Benutzer am PC registriert hat, wird „erzwungen“, dass der Benutzer den WeChat-Spitznamen eingeben muss. Verwenden Sie dies als Zuordnungsbedingung bei der Autorisierung von WeChat. Aber leider kann der WeChat-Spitzname geändert werden, wenn er nicht der einzige ist. Der Plan scheiterte auf einen Schlag.

Option 2: Nach der Autorisierung auf der WeChat-Seite und der Registrierung auf der PC-Seite werden Benutzer „gezwungen“, ihre Mobiltelefonnummer als Link einzugeben. Dies stellt ein Problem dar. Wir müssen sicherstellen, dass das Mobiltelefon des Benutzers authentisch ist. Dies kann durch einen Handy-Bestätigungscode erreicht werden (dasselbe gilt für E-Mail). Nehmen wir jedoch die folgende Situation an: Wenn ich zwei Mobiltelefonnummern habe, gebe ich eine bei der Registrierung am PC und die andere bei der Registrierung bei WeChat ein. Ist es verwandt? Die Antwort ist leider. Nachdem ich mich auf der PC-Seite registriert hatte, habe ich es außerdem nicht ausgefüllt (der Grund, warum ich doppelte Anführungszeichen erzwungen habe), und habe dann die WeChat-Seite zur Autorisierung und Anmeldung verwendet. Nun, an diesem Punkt warten zwei Daten darauf, dass Sie einen Weg finden, sie zu korrelieren, was einem typischen Entwickler entspricht, der sein eigenes Loch gräbt. Dieser Ansatz funktioniert bis zu einem gewissen Grad, aber die Strenge ist für Entwickler nicht akzeptabel.

3. Lösung, um zum Ursprung zurückzukehren

Analyse: Da die oben genannten Lösungen Probleme haben, lassen Sie uns zuerst sie werden alle beiseite geworfen. Um unsere Gedanken zu ordnen, kehren wir zur Wurzel des Problems zurück. Die zugehörige Frage erfordert eine eindeutige Kennung. Die eindeutige Kennung ist genau wie unsere Ausweisnummer. Wenn wir eine Kreditkarte beantragen, ist ein Ausweis erforderlich. Beim Kauf einer Nummernkarte im Echtnamensystem ist ein Ausweis erforderlich. Angenommen, wir sind der Systemadministrator, dann kann ich über Ihre Ausweisnummer auf jeden Fall Ihre Mobiltelefonnummer und Bankkartennummer herausfinden.

Nachdem wir die obige Idee hatten, müssen wir eine eindeutige Kennung als Assoziation finden. WeChat spielt eine wichtige Rolle. Es hat die gleiche Funktion wie die oben erwähnte ID-Kartennummer. Das WeChat-Konto identifiziert ein bestimmtes öffentliches Konto eindeutig.

Jeder, der WeChat-Entwicklung durchgeführt hat, sollte kein Problem damit haben, die WeChat-Autorisierung von openid zu erhalten. Die Frage ist, wie man die PC-Seite implementiert, um bei der Registrierung oder Anmeldung die OpenID zu erhalten. Die Implementierungsideen des Autors lauten wie folgt. Registrieren Sie sich auf dem PC oder beim Anmelden wird ein QR-Code angezeigt, der Benutzer dazu anleitet, den Code mit WeChat zu scannen, um zur Autorisierungsseite zu springen. In diesem Schritt gibt es ein äußerst wichtiges Detail. Bitte bringen Sie einen eindeutigen Autorisierungscode (authCode) mit dem QR-Code mit. Stellen Sie sich vor, wenn der Benutzer uns autorisiert, können wir die OpenID und den AuthCode in die Datenbank schreiben. Dann können wir die mit authCode verknüpfte OpenID über eine API auf der PC-Seite abrufen. Wenn wir dies tun, können wir wissen, wer gerade den QR-Code scannt, um sich zu registrieren oder sich am PC anzumelden (registrieren Sie sich, wenn Sie nicht registriert sind, melden Sie sich direkt an, wenn Sie registriert sind). Fühlte es sich plötzlich so einfach an? Wenn Sie der Meinung sind, dass der Text abstrakter ist, schauen Sie sich bitte das Symbol unten an

PC WeChat-Scancode-Anmeldevorgang

Kerncode

Nachdem wir die Ideen und Prozesse geklärt haben, gehen wir direkt zum Code über. Die Entwicklungsideen sind üblich, also zeigen Sie bitte Ihre Talente in der Entwicklungssprache.

Hinweis: Der folgende Code verwendet die C#-Sprache als Beispiel und verwendet MVC + EF (Hinweis: uuid entspricht unserem oben genannten AuthCode)

Scannen Sie den QR-Code, um sich anzumelden. Der Seiten-Backend-Code

public ActionResult Login()
{
//如果已登录,直接跳转到首页
if (User.Identity.IsAuthenticated)
return RedirectToAction("Index", "Home");
string url = Request.Url.Host;
string uuid = Guid.NewGuid().ToString();
ViewBag.url = "http://" + url + "/home/loginfor?uuid=" + uuid;//构造授权链接
ViewBag.uuid = uuid;//保存 uuid
return View();
}
Nach dem Login kopieren

verwendet das Plug-in jquery.qrcode.js, um den QR-Code zu generieren. Freunde, die mehr darüber erfahren möchten, gehen Sie bitte zu Github. Hier ist zu beachten, dass das Plug-in die QR-Code-Generierungsmethode, Canvas oder Tabelle angeben kann. Freunde, die IE unterstützen müssen, geben bitte an, dass sie die Tabelle zum Generieren verwenden möchten.

Der Code lautet wie folgt folgt:

jQuery('#qrcode').qrcode({
render : "table",
text : "http://baidu.com"
});
Nach dem Login kopieren

Zurück zum Thema, der Hauptcode der Anmeldeseite lautet wie folgt

<!--生成二维码的容器 p-->
<p id="qrcode-container">
</p>
<script src="~/Plugins/Jquery/jquery-1.9.1.min.js"></script>
<script src="~/Plugins/jquery-qrcode/jquery.qrcode.min.js"></script>
<script>
jQuery(function () {
//生成二维码
jQuery(&#39;#qrcode-container&#39;).qrcode("@ViewBag.url");
//轮询判断用户是否授权
var interval = setInterval(function () {
$.post("@Url.Action("UserLogin","Home")", { "uuid": "@ViewBag.uuid" }, function (data, status) {
if ("success" == status) {
//用户成功授权=>跳转
if ("success" == data) {
window.location.href = &#39;@Url.Action("Index", "Home")&#39;;
clearInterval(interval);
}
}
});
}, 200);
})
</script>
Nach dem Login kopieren

Abfrage, um festzustellen, ob der Benutzer den API-Code autorisiert

public string UserLogin(string uuid)
{
//验证参数是否合法
if (string.IsNullOrEmpty(uuid))
return "param_error";
WX_UserRecord user = db.WX_UserRecord.Where(u => u.uuId == uuid).FirstOrDefault();
if (user == null)
return "not_authcode";
//写入cookie
FormsAuthentication.SetAuthCookie(user.OpenId, false);
//清空uuid
user.uuId = null;
db.SaveChanges();
return "success";
}
Nach dem Login kopieren

WeChat-Autorisierungsaktion

public ActionResult Loginfor(string uuid)
{
#region 获取基本信息 - snsapi_userinfo
/*
* 创建微信通用类 - 这里代码比较复杂不在这里贴出
* 迟点我会将整个 Demo 稍微整理放上 Github
*/
WechatUserContext wxcontext = new WechatUserContext(System.Web.HttpContext.Current, uuid);
//使用微信通用类获取用户基本信息
wxcontext.GetUserInfo();
if (!string.IsNullOrEmpty(wxcontext.openid))
{
uuid = Request["state"];
//判断数据库是否存在
WX_UserRecord user = db.WX_UserRecord.Where(u => u.OpenId == wxcontext.openid).FirstOrDefault();
if (null == user)
{
user = new WX_UserRecord();
user.OpenId = wxcontext.openid;
user.City = wxcontext.city;
user.Country = wxcontext.country;
user.CreateTime = DateTime.Now;
user.HeadImgUrl = wxcontext.headimgurl;
user.Nickname = wxcontext.nickname;
user.Province = wxcontext.province;
user.Sex = wxcontext.sex;
user.Unionid = wxcontext.unionid; 
user.uuId = uuid;
db.WX_UserRecord.Add(user);
}
user.uuId = uuid;
db.SaveChanges();
}
#endregion
return View();
}
Nach dem Login kopieren

Schließlich das Design der Datenbanktabelle anhängen

Es gibt einfach nichts Besonderes Fügen Sie jedem von WeChat zurückgegebenen Parameter eine weitere benutzerdefinierte uuId hinzu

Einzelheiten zur WeChat-Parameterbeschreibung finden Sie in der WeChat-Entwicklerdokumentation

Betriebsergebnisse

1 .Scannen Sie den QR-Code, um sich auf der Seite anzumelden

2 Benutzerautorisierung

3. Benutzerbestätigung Autorisierung

4 >

Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung der Verwendung der .NET WeChat-Entwicklung auf dem PC zur Implementierung von Scancode-Registrierungs- und Anmeldefunktionen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So beheben Sie den vorübergehend vollen Access Point-Fehler auf einem Windows-PC So beheben Sie den vorübergehend vollen Access Point-Fehler auf einem Windows-PC Mar 16, 2024 pm 03:19 PM

Wenn beim Herstellen einer Verbindung zu einem WLAN-Router oder mobilen Hotspot auf Ihrem Windows 11/10-PC die Fehlermeldung „Der Zugangspunkt ist vorübergehend voll“ auftritt, liegt dies normalerweise an einer Netzwerküberlastung oder zu vielen angeschlossenen Geräten. Um dieses Problem zu lösen und eine erfolgreiche Verbindung zum Internet herzustellen, können Sie die folgenden Methoden ausprobieren: 1. Warten Sie eine Weile, bis andere Geräte die Verbindung trennen, bevor Sie erneut versuchen, eine Verbindung herzustellen. 2. Starten Sie Ihren WLAN-Router oder mobilen Hotspot neu, um den Netzwerkcache zu leeren und die IP-Adresse neu zuzuweisen. 3. Stellen Sie sicher, dass der Wi-Fi-Adaptertreiber Ihres PCs auf dem neuesten Stand ist, und suchen Sie im Geräte-Manager nach Updates. 4. Versuchen Sie, zu unterschiedlichen Zeiten eine Verbindung herzustellen, indem Sie die Stoßzeiten meiden. 5. Erwägen Sie die Hinzufügung von AccessP

Was bedeutet PC in Bezug auf das Internet? Was bedeutet PC in Bezug auf das Internet? Aug 10, 2023 pm 04:34 PM

PC ist eine gebräuchliche Abkürzung für „Personal Computer“. Ein Personal Computer ist ein allgegenwärtiges Computergerät, mit dem Daten verarbeitet und gespeichert, Softwareprogramme ausgeführt und eine Verbindung zum Internet hergestellt werden können. Im Zeitalter der Digitalisierung und Information ist der Personal Computer nicht nur ein Werkzeug, sondern auch ein Fenster zur Verbindung mit der Welt. Er ist auch ein wichtiges Werkzeug für Menschen, um Wissen zu erwerben, ihr Leben zu bereichern und sich persönlich weiterzuentwickeln.

Windows-PC bootet ständig ins BIOS [Fix] Windows-PC bootet ständig ins BIOS [Fix] Mar 11, 2024 am 09:40 AM

Wenn Ihr Windows-PC häufig die BIOS-Schnittstelle aufruft, kann dies zu Schwierigkeiten bei der Verwendung führen. Jedes Mal, wenn ich meinen Computer einschalte, bleibt der BIOS-Bildschirm hängen, und ein Neustart hilft nicht. Wenn Sie mit diesem Problem konfrontiert sind, helfen Ihnen die in diesem Artikel bereitgestellten Lösungen. Warum bootet mein Computer ständig im BIOS? Die häufigen Neustarts Ihres Computers im BIOS-Modus können verschiedene Ursachen haben, z. B. falsche Einstellungen der Startsequenz, beschädigte SATA-Kabel, lose Verbindungen, BIOS-Konfigurationsfehler oder Festplattenfehler usw. Behebung: Windows-PC startet ständig im BIOS. Wenn Ihr Windows-PC ständig im BIOS startet, verwenden Sie die unten stehende Lösung. Überprüfen Sie Ihre Startreihenfolge und schließen Sie das Gerät erneut an

So verwenden Sie Samsung Flow auf einem Windows-PC So verwenden Sie Samsung Flow auf einem Windows-PC Feb 19, 2024 pm 07:54 PM

SamsungFlow ist ein praktisches und praktisches Tool, mit dem Sie Ihr Galaxy-Telefon ganz einfach mit Ihrem Windows-PC verbinden können. Mit SamsungFlow können Sie Inhalte bequem zwischen Geräten teilen, Benachrichtigungen synchronisieren, Smartphones spiegeln und vieles mehr. In diesem Artikel erfahren Sie, wie Sie SamsungFlow auf einem Windows-Computer verwenden. So verwenden Sie Smartphone-Streaming auf einem Windows-PC. Um SamsungFlow zum Verbinden Ihres Windows-PCs und Ihres Galaxy Phone zu verwenden, müssen Sie sicherstellen, dass auf Ihren Galaxy-Smartphones und -Tablets Android 7.0 oder höher und auf Ihrem Windows-PC Windows 10 oder höher ausgeführt wird.

So laden Sie alle OneDrive-Dateien auf einmal auf den PC herunter So laden Sie alle OneDrive-Dateien auf einmal auf den PC herunter Feb 19, 2024 pm 06:51 PM

In diesem Artikel erfahren Sie, wie Sie alle OneDrive-Dateien auf einmal auf Ihren PC herunterladen. OneDrive ist eine leistungsstarke Cloud-Speicherplattform, mit der Benutzer jederzeit und überall auf ihre Dateien zugreifen können. Manchmal müssen Benutzer Dateien lokal sichern oder offline darauf zugreifen. Lesen Sie weiter, um zu erfahren, wie das ganz einfach geht. Wie lade ich alle OneDrive-Dateien auf einmal auf den PC herunter? Befolgen Sie diese Schritte, um alle OneDrive-Dateien auf einmal auf Ihren Windows-PC herunterzuladen: Starten Sie Onedrive und navigieren Sie zu „Meine Dateien“. Alle auf OneDrive hochgeladenen Dateien sind hier verfügbar. Drücken Sie STRG+A, um alle Dateien auszuwählen, oder aktivieren Sie das Kontrollkästchen, um die Auswahl aller Elemente umzuschalten. Klicken Sie oben auf die Download-Option.

Die Abenteuer eines kostengünstigen Chrome-Hosts: Er kann Black Apple nicht installieren, kann aber als qualifizierter PC betrachtet werden Die Abenteuer eines kostengünstigen Chrome-Hosts: Er kann Black Apple nicht installieren, kann aber als qualifizierter PC betrachtet werden Jul 11, 2024 pm 04:38 PM

Apropos: Wir haben viele Ausgaben der ausländischen Junk-Serie produziert, aber davor handelte es sich größtenteils um Mobiltelefone und zusammengebaute PCs. Ersteres ist durchschnittlich spielbar, während letzteres voller Unsicherheiten ist. Beispielsweise befindet sich der Computer, für dessen Installation wir beim letzten Mal 300 US-Dollar ausgegeben haben, jetzt im Zustand der ununterbrochenen Entfernung von Treibern. Allerdings ist es so, dass man „Lumpen aufsammelt“, und das Nebeneinander von Risiken und Vorteilen ist die Norm. Diesmal habe ich mir zum Beispiel die ASUS ChromeBox „geholt“, aus der ich ursprünglich einen Macmini (gefälscht) machen wollte, bin dabei aber auf viele unerwartete Probleme gestoßen und habe das angestrebte Ziel nicht erreicht. Letztendlich musste ich mich mit dem nächstbesten zufrieden geben und Windows darauf flashen. Obwohl der Versuch, Äpfel zu schwärzen, in den letzten Schritt fiel, hatte ich bei dem gesamten Prozess viel Spaß. Und wie

Der Computer, für dessen Zusammenbau ich 300 Yuan ausgegeben habe, lief erfolgreich durch das lokale Großmodell Der Computer, für dessen Zusammenbau ich 300 Yuan ausgegeben habe, lief erfolgreich durch das lokale Großmodell Apr 12, 2024 am 08:07 AM

Wenn 2023 als das erste Jahr der KI anerkannt wird, dann dürfte 2024 ein Schlüsseljahr für die Popularisierung großer KI-Modelle sein. Im vergangenen Jahr sind zahlreiche große KI-Modelle und zahlreiche KI-Anwendungen entstanden. Hersteller wie Meta und Google haben auch damit begonnen, ihre eigenen großen Online-/Lokalmodelle der Öffentlichkeit zugänglich zu machen, ähnlich der „KI-künstlichen Intelligenz“. " Das ist unerreichbar. Das Konzept kam plötzlich zu den Menschen. Heutzutage sind Menschen in ihrem Leben zunehmend künstlicher Intelligenz ausgesetzt. Wenn Sie genau hinschauen, werden Sie feststellen, dass fast alle der verschiedenen KI-Anwendungen, auf die Sie Zugriff haben, in der „Cloud“ bereitgestellt werden. Wenn Sie ein Gerät bauen möchten, mit dem große Modelle lokal ausgeführt werden können, ist die Hardware ein brandneuer AIPC mit einem Preis von mehr als 5.000 Yuan. Für normale Leute.

Windows 11 Lite: Was es ist und wie Sie es auf Ihrem PC installieren Windows 11 Lite: Was es ist und wie Sie es auf Ihrem PC installieren Apr 14, 2023 pm 11:19 PM

Wir wissen, dass Microsoft Windows 11 ein voll ausgestattetes und ansprechend gestaltetes Betriebssystem ist. Allerdings haben Benutzer nach der Windows 11 Lite-Version gefragt. Obwohl es erhebliche Verbesserungen bietet, ist Windows 11 ein ressourcenhungriges Betriebssystem, das ältere Maschinen schnell so überlasten kann, dass sie nicht mehr reibungslos laufen. In diesem Artikel werden Ihre am häufigsten gestellten Fragen dazu beantwortet, ob es eine Windows 11 Lite-Version gibt und ob der Download sicher ist. Folgen! Gibt es eine Windows 11 Lite-Version? Die Windows 11 Lite 21H2-Version, über die wir sprechen, wurde von Neelkalpa T. entwickelt

See all articles