日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Python教程:Flask如何實(shí)現(xiàn)HTTP令牌token認(rèn)證

token認(rèn)證

創(chuàng)新互聯(lián)主要從事成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)峽江,十多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18980820575

在restful設(shè)計(jì)中,用戶認(rèn)證模式通常使用json web token,而不會使用傳統(tǒng)的HTTP Basic認(rèn)證(傳入賬號密碼)

token認(rèn)證模式如下:在請求header中加入token

相關(guān)推薦:《Python視頻教程》

Flask中的實(shí)現(xiàn)

flask擴(kuò)展flask-httpauth提供了該認(rèn)證方法

$ pip install flask-httpauth

首先實(shí)例化

auth = HTTPTokenAuth(scheme='JWT')

上面的scheme就是token前面的字符串,可以自定義,這里我使用JWT

源代碼如下:

它提供了一個裝飾器,里面可以實(shí)現(xiàn)自己的token檢驗(yàn)方法

@auth.verify_token
def verify_token(token):
    pass
#這里需要自定義

Flask中的itsdangerous提供了令牌生成和校驗(yàn)的方法

from itsdangerous import TimedJSONWebSignatureSerializer, BadSignature,\
    SignatureExpired

組合起來:

@auth.verify_token
def verify_token(token):
    s = TimedJSONWebSignatureSerializer(
        current_app.config['SECRET_KEY']
    )
    try:
        data = s.loads(token)
        print(data)
    except BadSignature:
        raise AuthFailed(msg='token不正確')
    except SignatureExpired:
        raise AuthFailed(msg='token過期')
    uid = data['uid']
    return True

通過驗(yàn)證后返回True代表token認(rèn)證成功!

如果有需要登錄的視圖,就可以使用如下裝飾器:

@api.route('/login_require/', methods=['POST'])
@auth.login_required
def func():
    pass

只有Token認(rèn)證成功才能進(jìn)入該視圖。


本文標(biāo)題:創(chuàng)新互聯(lián)Python教程:Flask如何實(shí)現(xiàn)HTTP令牌token認(rèn)證
標(biāo)題網(wǎng)址:http://www.dlmjj.cn/article/dpghdsi.html