Django Rest 框架、JWT 和 request.session

标签 django session session-variables django-rest-framework jwt

我使用 Django Rest 框架和 JWT 进行身份验证,一切都运行良好,但是...... 我需要在登录时在 session 变量中保存有关用户的信息,但我真的不知道在哪里可以执行 request.session['mydata'] = plop

我尝试过:

def jwt_response_payload_handler(token, user=None, request=None):
  serializedUser = UserSerializer(user).data
  request.session['mydata'] = serializedUser.mydata
  return {
    'token': token,
    'user': serializedUser
  }

但是没用...

有什么想法吗?

最佳答案

request.session 通过 Django's session framework 进行管理这需要使用 session cookie,并且是 SessionAuthentication 的动力。

JWT 与 session 身份验证完全分开,并且不提供在 token 上存储任意数据的方法。

关于Django Rest 框架、JWT 和 request.session,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30546704/

相关文章:

javascript - Django ajax查看csrf失败并出现500错误

python - 如何在Django中将unique=true的外键设置为 "optional"?

php - 重定向前 Magento 中的事件调度

php - 回显从数据库中检索到的行的 session

php - Safari 和 php session 在 facebook iframe 中不起作用

django - 是否可以在没有 pip 的情况下安装 django 包?

mysql - 从 MySQL 迁移到 PostgreSQL 时 Django 用户应该知道什么?

node.js - Node : "ENOENT" warning messages with sessions

java - 使用 java 从 Payment Gateway 重定向时,我丢失了 session 数据

ruby-on-rails - Rspec/Capybara 模拟 session ( stub 或模拟?)