0

目前我正在使用itsdangerous生成定时 json Web 签名作为用户进行身份验证和重置密码等的令牌。这是代码:

from itsdangerous import TimedJSONWebSignatureSerializer as Serializer

class SampleCode:
    def generate_confirmation_token(self, expiration=600):
        s = Serializer(current_app.config['SECRET_KEY'], expires_in=expiration)
        return s.dumps({'confirm': self.id}).decode('utf-8')

    def confirm(self, token):
        s = Serializer(current_app.config['SECRET_KEY'])
        try:
            data = s.loads(token.encode('utf-8'))
        except:
            return False
        if data.get('confirm') != self.id:
            return False
        self.confirmed = True
        db.session.add(self)
        return True

而且由于TimedJSONWebSignatureSerializer弃用和删除,itsdangerous 2.1.0我想我可能需要继续使用其他一些提供 JWT/JWS 接口的库。

在这里我有两个候选人,哪个更好:

4

0 回答 0