幾個重要平台的auth2登入驗證

2022-04-08 11:12:03 字數 3226 閱讀 4888

根據授權碼取得access_token 引數

是否必須

含義grant_type

必須授權型別,此值固定為「authorization_code」。

client_id

必須**的appid。

client_secret

必須**的appkey。

code

必須上一步返回的authorization code。

注意此code會在10分鐘內過期。

redirect_uri

必須與上面一步中傳入的redirect_uri保持一致。

成功取碼: 

access_token=fe04************************cce2&expires_in=7776000 

失敗:返回code和msg欄位,以url引數對的形式返回,value部分會進行url編碼

根據access_token獲得對應使用者身份的openid 引數

是否必須

含義access_token

必須在step1中獲取到的access token。

查詢成功:

[plain]  

callback( );   

查詢失敗: 

[plain]  

通用錯誤碼  

呼叫openid並訪問資源

access_token=& oauth_consumer_key=& opened=

引數: 

your_app_id: appid(如222222)

your_access_token:step1獲取到的access token,必須保證未過期(如e0632e6ce12ac709999)

your_openid:step2獲取到的openid,使用者唯一標識(如b9dd537d1c5c98a9999)

[plain]  

(get)  

access_token=*************& oauth_consumer_key=12345& openid=****************& format=json   

[plain]     

weibo後台方式的登入驗證

獲得授權碼

client_id

必須string

appkey。

redirect_uri

必須string

授權**位址 

scope

可選string

申請scope許可權所需引數,可一次申請多個scope許可權,用逗號分隔。

state

可選string

防止跨站請求偽造(csrf)攻擊,第三方自定義串

display

可選string

授權頁面的終端型別,取值見下面的說明。

forcelogin

可選boolean

是否強制使用者重新登入,true:是,false:否。預設false。

language

可選string

授權頁語言,預設為中文簡體版,en為英文版。

成功: 

失敗: 

[plain]  

根據授權碼獲取access_token  必選

型別及範圍

說明client_id

true

string

申請應用時分配的appkey。

client_secret

true

string

申請應用時分配的appsecret。

grant_type

true

string

請求的型別,填寫authorization_code

grant_type為authorization_code時 必選

型別及範圍

說明code

true

string

呼叫authorize獲得的code值。

redirect_uri

true

string

**位址,需需與註冊應用裡的**位址一致。

成功呼叫則返回: 

[plain]  

不成功則: 

[sql]  

根據token查詢使用者的資訊及資源 必選

型別及範圍

說明access_token

true

string

access_token

成功返回值: 

[plain] 

失敗返回值: 

[html] view plaincopy

豆瓣後台方式的登入驗證

獲取授權碼

引數名稱

引數說明

client_id

必選apikey

redirect_uri

必選**位址,此位址必須與在應用註冊時填寫的**位址一致。

response_type

必選此值可以為 code 或者 token。

scope

可選申請許可權的範圍,預設的scope。

如果申請多個scope,使用逗號分隔。

state

可選第三方自定義引數。

成功: 

不成功:

獲取access_token

引數名稱

引數說明

client_id

必選apikey

client_secret

必選對應於豆瓣secret

redirect_uri

必選**位址

grant_type

必選此值可以為 authorization_code 或者 refresh_token 。

code

必選authorization_code

成功: 

[plain] 

失敗: www.2cto.com

[plain] 

獲取當前使用者資訊

(get)

重要注意事項: 

必須用get方法

l必須將token放在請求的header裡,key = 「authorization」, value=」bearer token…」的方式放入header.

成功: 

[plain] 

失敗: 

[plain]  

舉例方式: 

curl "" -h "authorization: bearer a14afef0f66fcffce3e0fcd2e34f6ff4"

幾個重要的概念

1 服務 服務是乙個個的介面,介面約定了服務,從而使隨意替換服務的實現對使用介面服務的 沒有任何的影響。像我們上面例子中的ilog,ilogformatter都是乙個個服務,我們在這個例子中支實現了乙個文字檔案的日誌記錄,如果你要是實現資料庫記錄的日誌記錄,都必須要遵守ilog這個介面。2 元件 簡...

幾個重要介面

1 statement sql語句執行介面 statement介面代表了乙個資料庫的狀態,在向資料庫傳送相應的sql語句時,都需要建立statement 介面或者preparedstatement介面。在具體應用中,statement主要用於操作不帶引數 可以直接執行 的 sql語句,比如刪除語句 ...

HTTP Servlet 重要的幾個方法

http servlet繼承了gencenservlet類 gencenservlet實現了兩個介面 乙個用於servletconfig設定介面,乙個為servlet介面只要是 1 init 方法 控制servlet的生命週期 重點記憶8個方法 http servlet 使用乙個 html 來傳送和...