Beispiel für die Implementierung der Drittanbieter-Autorisierungsmethode von GitHub in Vue

Beispiel für die Implementierung der Drittanbieter-Autorisierungsmethode von GitHub in Vue

Ich habe vor Kurzem mein Blogsystem verbessert und plötzlich kam mir die Idee, von der vorübergehenden Eingabe von Name und E-Mail zum Kommentieren auf die Verwendung der GitHub-Autorisierung zum Anmelden und Posten von Kommentaren umzusteigen.
Kommen wir ohne weitere Umschweife gleich zur Sache

Tipps: Dieser Artikel ist nur für persönliche Zwecke gedacht. Wenn Sie detailliertere Verwendungsmethoden erfahren möchten, können Sie die offizielle OAuth-Dokumentation besuchen.

Erstellen von OAuth-Apps

Zunächst benötigen Sie ein GitHub-Konto und gehen zu GitHub-Entwicklern. Nach dem Ausfüllen der erforderlichen Informationen werden automatisch die Client_ID und das Client Secret generiert, die in den folgenden Schritten verwendet werden.

Holen Sie sich den Code

//Verfahren
asynchrones githubLogin() {
 windows.location.href = 
    „https://github.com/login/oauth/authorize?client_id = Ihre_Client-ID&redirect_uri=Ihre_Redirect_uri“
}
<a href="https://github.com/login/oauth/authorize?client_id = Ihre_Client-ID&redirect_uri=Ihre_Weiterleitungs-URI">GitHub-Anmeldung</a>

Der Parameter redirect_uri in der Route ist optional. Wenn es weggelassen wird, leitet GitHub zum Rückrufpfad weiter, den Sie in Ihren OAuth-Apps konfiguriert haben. Falls angegeben, muss der von Ihnen eingegebene Redirect_URI ein Unterpfad des Rückrufpfads sein, den Sie in Ihren OAuth-Apps konfiguriert haben. wie folgt:

RÜCKRUF: http://xx.com/github
GUT: http://xx.com/github
GUT: http://xx.com/github/path/path
SCHLECHT: http://xx.com/git
SCHLECHT: http://xxxxx.com/Pfad

Wenn der Benutzer Ihre Anfrage akzeptiert, springt er zum Redirect-URI und wir können den Parametercode in der Route akzeptieren, um mit dem nächsten Schritt fortzufahren.

Ihre_Umleitungs-URI?Code=xxx

Zugriffstoken abrufen

Wir benötigen Client-ID, Client-Geheimnis und Code, um den Zugriffstoken zu erhalten.

/*
/githubAccessToken:https://github.com/login/oauth/access_token
*/
dies.$axios
 .get('/githubAccessToken',{
 Parameter: {
  client_id: Ihre_Client-ID,
  client_secret: Ihr_Client_Geheimnis,
  Code: Ihr_Code
  }
 })

Standardmäßig erhalten Sie eine Antwort wie diese:

Zugriffstoken=xxxxx&Tokentyp=Träger

Wenn Sie die Antwort in einem praktischeren Format erhalten möchten, können Sie die Accept-Header anpassen:

Akzeptieren: „application/json“
=> {"Zugriffstoken":xxxxx,"Tokentyp":Träger}

Abrufen von Benutzerinformationen

Nachdem wir den Zugriffstoken erhalten haben, können wir einige Informationen des Benutzers anfordern:

/*
/githubUserInfo:https://api.github.com/user
*/
dies.$axios
 .get('/githubUserInfo', {
  Überschriften: {
    "Inhaltstyp": "Anwendung/x-www-form-urlencoded",
    Akzeptieren: "application/json",
    Autorisierung: `token ${access_token}` //Erforderlich}
})

Anschließend können Sie die Benutzerinformationen abrufen.

Dies ist das Ende dieses Artikels über die Implementierung der Drittanbieterautorisierung von GitHub durch Vue. Weitere relevante Inhalte zur Implementierung der Drittanbieterautorisierung von GitHub durch Vue finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Nachdem das Vue-Projekt gepackt ist, laden Sie es auf GitHub hoch und implementieren Sie die Vorschau von GitHub-Pages
  • Vue-Projektpaket auf GitHub hochladen und Vorschau-Link erstellen (Seiten)
  • So stellen Sie ein Vue CLI 3.x-Projekt auf GitHub-Seiten bereit
  • Implementierungsbeispiel für das Hochladen eines Vue-Projekts auf Github zur Vorschau
  • Detaillierte Erklärung zur Verwendung von mpvue zur Entwicklung von GitHub-Applets
  • Das Vue-Projekt implementiert die Online-Vorschaufunktion von GitHub
  • Vue GitHub-Benutzersuche – Fallfreigabe

<<:  Lösen Sie das Problem der unsicheren Docker x509-Registrierung

>>:  Zehn beliebte Regeln für das Interface-Design

Artikel empfehlen

Der HTML 5-Entwurf wurde kein formeller Standard

<br />Gestern habe ich beim W3C gesehen, das...

Verwenden von CSS zum Implementieren einer Ladeanimation des Android-Systems

Im Web gibt es zwei gängige Ladesymbole: eines is...

Implementierung von Docker zum Erstellen eines Zookeeper- und Kafka-Clusters

Ich habe vor Kurzem Kafka gelernt. Als ich mich d...

MySQL-Lernnotizen zum Umgang mit doppelten Daten

MySQL verarbeitet doppelte Daten Einige MySQL-Tab...

Windows 2019 Aktivierungs-Tutorial (Office2019)

Vor ein paar Tagen habe ich erfahren, dass die of...

Upgrade von MySQL 5.1 auf 5.5.36 in CentOS

Dieser Artikel beschreibt den Upgrade-Prozess von...

HTML-Hyperlink ein Tag_Powernode Java Academy

Jeder, der HTML studiert oder verwendet hat, soll...

CSS3 realisiert Textreliefeffekt, Gravureffekt, Flammentext

Um diesen Effekt zu erzielen, müssen Sie zunächst...

Installation und Verwendung von TypeScript und grundlegende Datentypen

Der erste Schritt besteht darin, TypeScript globa...

jQuery implementiert alle Warenkorbfunktionen

Inhaltsverzeichnis 1. Alles auswählen 2. Erhöhen ...

Vue implementiert einfache Kommentarfunktion

In diesem Artikel wird der spezifische Code von V...