会话未存储在Django的浏览器中

Amandeep Singh |

我正在尝试构建React TSX用于前端和后端的应用程序Django我想使用将会话存储在浏览器中SESSION_ENGINE=django.contrib.sessions.backends.signed_cookies所以,我想在存储会话在如何以类似的方式PHPApache存储其会话。我已经尝试了很多方法,但是仍然无法存储会话,我一直SESSION IS NOW SET从代码中获取输出任何帮助都会很棒。谢谢

login.tsx

import Cookies from "js-cookie";
import axios, { AxiosResponse, AxiosError } from "axios";

..........
..........

axios.request({
    url: "login/",
    baseURL: "http://localhost:8000/",
    method: "POST",
    data: data,
    timeout: 15000,
    withCredentials: true,
    headers: { "X-Requested-With": "XMLHttpRequest", "X-CSRFToken": Cookies.get("csrftoken") },
    validateStatus: () => true
}).then((res: AxiosResponse): void => {
    console.log(res.data);
});

login.py

from django.http import HttpResponse

def get(req):
    req.session.modified = True

    if req.session.get("user_id", False):
        return HttpResponse("EXISTS: " + req.session.get("user_id"))   <-- THIS OUTPUT IS NEVER BEING RETRIEVED
    else:
        req.session["user_id"] = "USER-ID"
        req.session.save()
        return HttpResponse("SESSION IS NOW SET")   <-- THIS IS THE ONLY OUTPUT BEING RETRIEVED

settings.py

..........
..........

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'corsheaders'
]

SESSION_ENGINE = "django.contrib.sessions.backends.signed_cookies"
SESSION_EXPIRE_AT_BROWSER_CLOSE = True
SESSION_COOKIE_HTTPONLY = True
SESSION_COOKIE_SECURE = True
SESSION_COOKIE_NAME = "sessioninfo"

CORS_ORIGIN_WHITELIST = [ "http://localhost:5000" ]
CORS_ORIGIN_ALLOW_ALL = True
CORS_ALLOW_CREDENTIALS = True
CORS_ALLOW_METHODS = ["GET","POST"]
CORS_ALLOW_HEADERS = [ "accept", "accept-encoding", "authorization", "content-type", "dnt", "origin", "user-agent", "x-csrftoken", "x-requested-with" ]

CSRF_COOKIE_SECURE = True
CSRF_COOKIE_HTTPONLY = True

..........
..........
Amandeep Singh |

我想到了。我所要做的就是对此进行编辑settings.py

..........
..........

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'corsheaders'
]

SESSION_ENGINE = "django.contrib.sessions.backends.signed_cookies"
SESSION_COOKIE_NAME = "user_session"
SESSION_COOKIE_HTTPONLY = True
SESSION_SAVE_EVERY_REQUEST = True
SESSION_EXPIRE_AT_BROWSER_CLOSE = True

CORS_ORIGIN_WHITELIST = [ "http://localhost:5000" ]
CORS_ORIGIN_ALLOW_ALL = True
CORS_ALLOW_CREDENTIALS = True
CORS_ALLOW_METHODS = ["GET","POST"]
CORS_ALLOW_HEADERS = [ "accept", "accept-encoding", "authorization", "content-type", "dnt", "origin", "user-agent", "x-csrftoken", "x-requested-with" ]

CSRF_COOKIE_SECURE = True
CSRF_COOKIE_HTTPONLY = True

..........
..........

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Mobx存储更改未反映在浏览器中

来自分类Dev

在浏览器中查看会话变量

来自分类Dev

不同浏览器中的会话管理

来自分类Dev

在浏览器中查看会话变量

来自分类Dev

在Passportjs反序列化中,将会话数据存储在浏览器Cookie中

来自分类Dev

使用Oauth进行移动登录-将会话存储在浏览器中以获取Web视图

来自分类Dev

浏览器在单个会话中存储下载的资产多长时间

来自分类Dev

是否有检测浏览器中打开/关闭会话存储的事件?

来自分类Dev

在浏览器和会话中将数据存储为Cookie

来自分类Dev

浏览器中的永久存储

来自分类Dev

在浏览器中存储CSS类

来自分类Dev

SVG未显示在浏览器中

来自分类Dev

如何判断基于 django DB 的会话在浏览器中是否已过期?

来自分类Dev

Cookies标头存在,但Cookie未存储在浏览器中

来自分类Dev

Windows 10浏览器中未显示Android 4.4.2设备的外部存储文件夹

来自分类Dev

网址中的WWW和浏览器中的用户会话

来自分类Dev

从浏览器中杀死Django进程

来自分类Dev

当浏览器在MVC中关闭时,阻止会话过期

来自分类Dev

在Laravel JetStream中禁用浏览器会话

来自分类Dev

无法在IE和Safari浏览器中获取会话

来自分类Dev

在不同浏览器中劫持我自己的会话

来自分类Dev

浏览器中的Azure文件存储URL显示InvalidHeaderValue

来自分类Dev

在浏览器中存储私钥的最佳方法?

来自分类Dev

在Parse数据浏览器中安全存储用户的余额

来自分类Dev

QWebEngineView-允许在浏览器中本地存储

来自分类Dev

如何在浏览器的cookie中存储数据

来自分类Dev

浏览器中Cookie存储的编码方案

来自分类Dev

响应发送到浏览器后,为什么laravel存储会话?

来自分类Dev

浏览器上基于令牌的身份验证和会话/本地存储

Related 相关文章

  1. 1

    Mobx存储更改未反映在浏览器中

  2. 2

    在浏览器中查看会话变量

  3. 3

    不同浏览器中的会话管理

  4. 4

    在浏览器中查看会话变量

  5. 5

    在Passportjs反序列化中,将会话数据存储在浏览器Cookie中

  6. 6

    使用Oauth进行移动登录-将会话存储在浏览器中以获取Web视图

  7. 7

    浏览器在单个会话中存储下载的资产多长时间

  8. 8

    是否有检测浏览器中打开/关闭会话存储的事件?

  9. 9

    在浏览器和会话中将数据存储为Cookie

  10. 10

    浏览器中的永久存储

  11. 11

    在浏览器中存储CSS类

  12. 12

    SVG未显示在浏览器中

  13. 13

    如何判断基于 django DB 的会话在浏览器中是否已过期?

  14. 14

    Cookies标头存在,但Cookie未存储在浏览器中

  15. 15

    Windows 10浏览器中未显示Android 4.4.2设备的外部存储文件夹

  16. 16

    网址中的WWW和浏览器中的用户会话

  17. 17

    从浏览器中杀死Django进程

  18. 18

    当浏览器在MVC中关闭时,阻止会话过期

  19. 19

    在Laravel JetStream中禁用浏览器会话

  20. 20

    无法在IE和Safari浏览器中获取会话

  21. 21

    在不同浏览器中劫持我自己的会话

  22. 22

    浏览器中的Azure文件存储URL显示InvalidHeaderValue

  23. 23

    在浏览器中存储私钥的最佳方法?

  24. 24

    在Parse数据浏览器中安全存储用户的余额

  25. 25

    QWebEngineView-允许在浏览器中本地存储

  26. 26

    如何在浏览器的cookie中存储数据

  27. 27

    浏览器中Cookie存储的编码方案

  28. 28

    响应发送到浏览器后,为什么laravel存储会话?

  29. 29

    浏览器上基于令牌的身份验证和会话/本地存储

热门标签

归档