timmy ha revisionato questo gist 10 months ago. Vai alla revisione
Nessuna modifica
timmy ha revisionato questo gist 10 months ago. Vai alla revisione
Nessuna modifica
timmy ha revisionato questo gist 1 year ago. Vai alla revisione
1 file changed, 24 insertions
jwt_token_generation_and_validation.py(file creato)
| @@ -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 | + | ||
Più nuovi
Più vecchi