【发布时间】:2019-06-02 11:11:57
【问题描述】:
我在关注一些 django rest 框架教程,发现了一些晦涩难懂的代码。这个 sn-p 来自定制的用户模型,该项目使用 jwt 进行身份验证。
正如我在 sn-p 中评论的那样,我无法注意到他们首先对数据进行编码并再次对其进行解码的原因。我认为这种模式不仅是本教程特有的,而且是相当普遍的模式。谁能给我解释一下?
def _generate_jwt_token(self):
"""
Generates a JSON Web Token that stores this user's ID and
has an expiry date set to 60 days into the future.
"""
dt = datetime.now() + timedelta(days=60)
token = jwt.encode({ #first encode here
'id': self.pk,
'exp': int(dt.strftime('%s'))
}, settings.SECRET_KEY, algorithm='HS256')
return token.decode('utf-8') #returns decoded object
【问题讨论】:
标签: django django-rest-framework jwt