Django 403 CSRF验证失败

2024-01-25

我正在为我的学校编写一个注册网站,并使用 Django 作为框架。对于注册,我需要用户名、密码和注册令牌。这些尚未得到验证,我现在要做的就是从注册输入页面(使用 POST 请求)转到“您已成功注册”页面。在此过程中,csrf 令牌显然拒绝验证。

My view:

def register(request):
    return render(request, 'enroller/successfulEnroll.html')

我的页面:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <form action="{% url 'register' %}" method="post"> {% csrf_token %}
    <div class="container">
        <label><b>New Username</b></label>
        <input type="text" placeholder="Username" name="uname" required>
        <br>
        <label><b>Password</b></label>
        <input type="password" placeholder="Password" name="psw" required>
        <br>
        <label><b>Registration Password</b></label>
        <input type="text" placeholder="Registration Key" name="reg" required>
        <br>
        <input type="submit" value="Register" />
    </div>
    </form>
</body>
</html>

当我尝试从注册页面转到成功页面时,出现错误 403(CSRF 验证失败。请求中止)。但是,当我尝试访问 url mysite.com/register/ 时,它返回我请求的页面,没有错误。

有没有什么办法解决这一问题?我一直在研究 RequestContext,但我不完全确定它会在哪里使用。


让它工作了。丹尼尔是对的 - 这是我的中间件配置的问题。我在 settings.py 的中间件数组之前添加了两行,突然间它就起作用了。

SESSION_COOKIE_SECURE = True
SESSION_EXPIRE_AT_BROWSER_CLOSE = True

我不能说我完全确定它为什么有效,或者问题到底是什么,但它现在有效。谢谢丹尼尔!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Django 403 CSRF验证失败 的相关文章

随机推荐

  • 获取git命令列表

    我想为每个 git 命令创建一个别名 由于它们有很多 我想将它们放在一个列表中 然后在我的循环中循环 bashrc 有什么办法可以将它们写入 shell 脚本中吗 你可以试试这个 git help a 或者 您的 git 命令列在
  • Spring AOP Aspect 无法使用 Mockito 工作

    我有一个 Aspect它编织了我所有控制器操作方法的执行 当我运行系统时它工作得很好 但在单元测试中却不行 我按以下方式使用 Mockito 和 junit RunWith SpringJUnit4ClassRunner class Con
  • asp.net mvc url 路由

    如何映射诸如domain com 用户名之类的内容 问题是我认为 MVC 路由会寻找控制器来确定它应该如何处理映射请求 我对 ASP NET MVC 还很陌生 然而 根据迄今为止的教程 路由机制似乎相当僵化 它实际上非常灵活 我想如果您有更
  • 在 Typescript 中选择材质 UI

    我使用 Material UI select 创建了一个下拉菜单 它说 搜索依据 当我们点击它时 它会给我们一个列表 当我选择其中一个选项时 我想存储该选项并将 搜索依据 更改为所选选项 export default function Us
  • 销毁免费墙实例

    我正在使用jquery Freewall 插件 http vnjs net www project freewall 我想知道如何销毁它的一个实例 我写了一个小例子供大家理解 var startFreewall function funct
  • 将数据从一个子布局发送到 sitecore 中的另一个子布局

    我很难在 Sitecore 7 中构建过滤系统 我有 2 个子布局 位于页面的同一级别 子布局 A 是一个侧边栏 其中包含复选框列表 并具有一个用所选值填充列表的事件 子布局 B 显示一组项目 我想做的是将填充的列表从子布局 A 发送到子布
  • 在 proto 中从父文件夹导入到子文件夹

    我正在尝试将原型 defn 从父原型导入到具有以下文件夹结构的子原型中 parent proto sub child proto 父级 proto message Attribute 子原型 import parent proto mess
  • 在一列上使用 unique 并在另一列上执行 order by 会产生错误

    我有一张桌子 abc test 包含 n num k str 列 此查询不起作用 select distinct n num from abc test order by k str 但这有效 select n num from abc t
  • 请逐步解释递归[关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 请逐步解释递归 public class TestClass private static void printit i
  • 成功安装 Python 自制程序后,运行“pip”会出现“找不到命令”

    前言 我对终端很不好 请耐心等待 当我跑步时pip我得到 zsh command not found pip 我已经安装了带有brew的Python 2 7 11 这应该允许pip工作 当我跑步时echo PATH I get usr lo
  • 如何判断一个点是否在一组区间内?

    我正在寻找最快的方法来确定线上的点是否在该线的子集中 我得到了一个整数 Point 并且我还有一个 列表 点 用整数表示 3 10 1000 等 间隔 我用 2 个整数表示 2 10 是从 2 到 10 的所有整数 50 60 等 在此示例
  • Android 图像视图矩阵缩放 + 平移

    我正在尝试手动获取以图像视图为中心并适合屏幕的图像 我需要用矩阵来完成 稍后我将动态更改矩阵变换 问题是我无法使图像在视图中居中 比例合适 这是代码 Compute the scale to choose this works float
  • npm 安装错误:rollbackFailedOptional:命令 npm install --save-dev @babel/core @babel/cli 的动词 npm-session a0d68

    当我尝试安装 babel 时 我不断收到此错误 rollbackFailedOptional verb npm session a0d68 节点版本为12 16 1 npm 版本是 6 13 4 我只是想安装 babel 并探索它是如何工作
  • 在 Laravel 中使用 number_format 方法

    我对 Laravel 和 Blade 模板相当陌生 谁能帮我展示如何做到这一点 我有这样的看法 foreach Expenses as Expense tr td Expense gt type td td Expense gt narra
  • 如何在命名空间范围内前向声明 constexpr 对象?

    在 clang 主干 上 我可以转发声明一个对象 稍后将用constexpr如下 Fwd declarations struct S extern const S s later definitions struct S constexpr
  • 使用 BLoC 处理导航的正确方法

    大家好 我正在使用 BLoC 来开发我目前正在开发的应用程序 但在某些情况下我一无所知 例如当您登录时触发 API 调用并自然等待结果时 我会发送加载状态并显示加载程序 但之后 这完成了如何处理例如导航到不同的屏幕 我目前有这样的事情 ty
  • 如何计算两个单词之间的“最短距离”?

    最近我参加了一次面试 我被要求编写一个算法来找到从特定单词到给定单词的 1 个字母变化的最小数量 即 Cat gt Cot gt Cog gt Dog 我不想要问题的解决方案 只是引导我了解如何在该算法中使用 BFS 根据这个拼字游戏列表
  • docusign 代表发送功能

    总的来说 我是 docusign 和 api 的新手 我已在 docusign 上手动创建了一个主帐户 现在我想使用此帐户创建新用户并使用代表发送功能 我已经浏览过这个 pdf http www docusign com sites def
  • 通用 Windows 平台应用程序和 C++/CLI (VS 2015 RC1)

    我有一些源自 NET 系统命名空间类的 C CLI 代码 有没有办法为通用 Windows 平台应用程序重用此代码 我无法在 C 中获得对系统命名空间的引用 尽管在 C 中这是可能的 看起来仅支持 C Cx 代码 而不支持托管 C CLI
  • Django 403 CSRF验证失败

    我正在为我的学校编写一个注册网站 并使用 Django 作为框架 对于注册 我需要用户名 密码和注册令牌 这些尚未得到验证 我现在要做的就是从注册输入页面 使用 POST 请求 转到 您已成功注册 页面 在此过程中 csrf 令牌显然拒绝验