简体   繁体   English

在没有 DRF 的表单提交上的 Django 视图中生成 JWT 令牌

[英]Generate JWT token in Django view on form submit without DRF

I would like to know how can I generate a JWT token in django based on some fields which I get from a form submit in the view.我想知道如何根据从视图中提交的表单中获得的一些字段在 django 中生成 JWT 令牌。 This toke is not used authentication in django but I need to pass this token back in response which will then be sent to another service using JavaScript.此令牌在 django 中未使用身份验证,但我需要将此令牌传回作为响应,然后使用 JavaScript 将其发送到另一个服务。

I am not using DRF currently.我目前没有使用 DRF。

The flow will be something like流程将类似于

FrontEnd -> Form submit -> Django Backend generate JWT -> Send back to FrontEnd in response

Again this is not for authentication on django.同样,这不适用于 django 上的身份验证。

If someone can point me to a working example that will definitely help me out.如果有人可以向我指出一个肯定会帮助我的工作示例。

Regards, M.问候,M。

Found my answer.找到了我的答案。

Use the python library called pyjwt使用名为pyjwt的 python 库

code example (JWTvalid for 1 hour)代码示例(JWT 有效期 1 小时)

import jwt
import datetime
exp_time = datetime.datetime.now() + datetime.timedelta(hours=1)
JWT_PAYLOAD = {
        "context": {
            "user": {
                "name": "My Name",
                "email": "My Email",
            },
            "iss": "My ISS",
            "exp": int(exp_time.timestamp()),
            "iat": int(datetime.datetime.now().timestamp()),
        }
    }
jwt_token = jwt.encode(JWT_PAYLOAD, settings.JWT_SECRET, algorithm='HS256')

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM