微博三方登入原理

2022-08-24 18:24:10 字數 1207 閱讀 6951

微博三方登入流程

前端獲取認證code

1. 在vue頁面載入時,動態傳送請求獲取微博授權url

2. django收到請求的url後, 通過微博應用id(client_id)和**位址(redirect_url)動態生成授權url返回給vue

3. 當使用者點選上面的url進行掃碼,授權成功會跳轉我們的**介面並附加code引數

4. vue獲取到微博返回的code後,會將code傳送給django後端(上面的redirect_url)

獲取微博access_token

1. 後端獲取code後,結合client_id, client_secret, redirect_url引數進行傳遞,獲取微博access_token

獲取微博使用者基本資訊並儲存到資料庫

1. 使用獲得的access_token呼叫獲取使用者基本資訊的介面,獲取使用者第三方平台的基本資訊

2. 使用者基本資訊儲存到資料庫,然後關聯本地使用者,然後將使用者資訊返回給前端

生成token給vue

1. django後端借助微博認證成功後,可以使用jwt生成token,返回給vue

2. vue將token儲存到localstorage中, 以便使用者訪問其他頁面進行身份驗證

第三方登入與本地登入的關聯(三種情況)

1. 本地未登入,第一次登入第三方

# 此時相當於註冊,直接把第三方資訊拉取來並註冊成本地使用者就可以了,並建立本地使用者與第三方使用者(openid)的繫結關係

2. 本地未登入,再次登入第三方

# 此時使用者已註冊,獲取到openid後直接找出對應的本地使用者即可

3. 本地登入,並繫結第三方

# 這種情況只要將獲取到的openid繫結到本地使用者就可以了

oauth認證原理

1. oauth是乙個開放標準,允許使用者讓第三方應用訪問該使用者在某一**上儲存的私密的資源,而無需將使用者名稱和密碼提供給第三方應用。

2. oauth允許使用者提供乙個令牌,而不是使用者名稱和密碼來訪問他們存放在特定服務提供者的資料。

3. 這個code如果能出三方換取到資料就證明這個使用者是三方的真實使用者

為什麼使用三方登入

微博三方登入原理

1.oauth是乙個開放標準,允許使用者讓第三方應用訪問該使用者在某一 上儲存的私密的資源,而無 需將使用者名稱和密碼提供給第三方應用。2.oauth允許使用者提供乙個令牌,而不是使用者名稱和密碼來訪問他們存放在特定服務提供者的資料。3.這個code如果能出三方換取到資料就證明這個使用者是三方真實的...

19 微博三方登入原理

1.1 前端獲取認證code 獲取微博的掃碼頁面 1.2 獲取微博access token 1.3 獲取微博使用者基本資訊並儲存到資料庫 1.4 生成token給vue 2.1 情況1 本地未登入,第一次登入第三方 此時相當於註冊,直接把第三方資訊拉取來並註冊成本地使用者就可以了,並建立本地使用者與...

三方登入微博url介面

2.2 新增子路由 oauth urls.py from django.urls import path from import views urlpatterns 2.3 在syl settings.py中新增應用 2.4 在syl urls.py主路由中新增 urlpatterns path o...