Laravel 8 Code Verifier & Code Challenge

2021-07-26 09:49 更新

由于這個授權(quán)準(zhǔn)許不提供客戶端密鑰,開發(fā)者需要生成 Code Verifier 和 Code Challenge 的組合以請求令牌。

Code Verifier 應(yīng)該是一個隨機(jī)字符串,長度在 43 到 128 個字符之間,包含字母、數(shù)字和 -、. 、_~,如 [RFC 7636 規(guī)范](tools.ietf.org/html/rfc7636) 中定義的那樣。

Code Challenge 應(yīng)該是一個 Base64 編碼包含 URL 和文件名安全字符的字符串。應(yīng)刪除結(jié)尾的 '=' 字符,并且不應(yīng)出現(xiàn)換行符、空白或其他附加字符。

$encoded = base64_encode(hash('sha256', $code_verifier, true));

$codeChallenge = strtr(rtrim($encoded, '='), '+/', '-_'); 


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號