AttributeError:'str'对象没有属性'decode'python错误

这是我的代码

@app.route("/api/v1.0/login", methods=["GET"] )
def login():
    auth = request.authorization
    if auth:
        user = users.find_one( { "username" : auth.username } )
        if user is not None:
            if bcrypt.checkpw(bytes(auth.password, 'UTF-8'), user["password"]):
                token = jwt.encode({
                    'user' : auth.username,
                    'exp' : datetime.datetime.utcnow() + datetime.timedelta(minutes=30)}, app.config['SECRET_KEY'])
                return make_response( jsonify({'token' : token.decode('UTF-8')}), 200)
            else: 
                return make_response(jsonify({"message" : "Bad password"} ) )
        else: 
            return make_response(jsonify({"message" : "Bad username" } ) )

    return make_response(jsonify({ "message" : "Authentication required"}))

这是错误

AttributeError: 'str' 对象没有属性 'decode'

回答

如果您使用的是PyJwt模块,则无需解码令牌。jwt.encode({some_dict})返回您需要的令牌。


以上是AttributeError:'str'对象没有属性'decode'python错误的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>