Zuletzt aktiv 10 months ago

這段 Python 程式碼使用 JWT(JSON Web Token)來實現 身份驗證與授權。它首先根據 使用者資訊(ID、帳號)及 自訂金鑰 生成一個 有效期限為 30 分鐘 的 JWT,然後透過相同的金鑰來驗證 Token 的有效性,並解碼出原始資料。此機制適用於 使用者登入授權、API 驗證及安全通信,可確保請求的合法性並防止未授權的存取。

timmy hat die Gist bearbeitet 10 months ago. Zu Änderung gehen

Keine Änderungen

timmy hat die Gist bearbeitet 10 months ago. Zu Änderung gehen

Keine Änderungen

timmy hat die Gist bearbeitet 1 year ago. Zu Änderung gehen

1 file changed, 24 insertions

jwt_token_generation_and_validation.py(Datei erstellt)

@@ -0,0 +1,24 @@
1 + import jwt
2 + import datetime
3 +
4 + # 假設的使用者資訊
5 + user = {
6 + 'id': 123,
7 + 'username': 'exampleUser'
8 + }
9 +
10 + # 生成 JWT
11 + secret = 'your_secret_key'
12 + token = jwt.encode({'user': user, 'exp': datetime.datetime.utcnow() + datetime.timedelta(minutes=30)}, secret, algorithm='HS256') # 使用自訂的密鑰
13 +
14 + print('生成的 JWT:', token)
15 +
16 + # 驗證 JWT
17 + try:
18 + decoded = jwt.decode(token, secret, algorithms=['HS256']) # 使用相同的密鑰進行驗證
19 + print('驗證成功,解碼後的內容:', decoded)
20 + except jwt.ExpiredSignatureError:
21 + print('Token已過期')
22 + except jwt.InvalidTokenError:
23 + print('無效的Token')
24 +
Neuer Älter