Django X-CSRFToken 已设置但仍然收到 403 禁止

2024-06-25

我开发了一个 Django 文件上传 API,它接收来自客户端的发布数据并将数据保存为文件。

根据Django CSRF 手册 https://docs.djangoproject.com/en/1.8/ref/csrf/,HTTP 请求标头应使用 csrftoken cookie 值设置 X-CSRFToken。我已经通过下面的代码设置了 X-CSRFToken,但是 Django 服务器仍然禁止 POST 请求(403),如下图所示。

$(document).ready(function(){
    var authid
    $.get("http://localhost:8000/v1/getAuthID?username=testuser1&password=123", function(data){
        authid = data["authid"];
        var csrftoken = $.cookie('csrftoken');
        console.log(csrftoken);

        $.ajaxSetup({
            beforeSend: function(xhr, settings) {
                xhr.setRequestHeader("X-CSRFToken", csrftoken);
            }
        });

        url = "http://localhost:8000/v1/file".replace("{authid}", authid).replace("{token}", csrftoken)
        $.post(url, function(data){
        })
    })
})

您是如何通过向 Django 服务器发送 POST 请求来克服 Django CSRF 的?

Thanks!


将 ajaxSetup 移到 AJAX 成功函数之外,因为请求需要它,而不是在请求之后。

$(document).ready(function(){
    var authid;
    var csrftoken = $.cookie('csrftoken');
    console.log(csrftoken);

    $.ajaxSetup({
        beforeSend: function(xhr, settings) {
            xhr.setRequestHeader("X-CSRFToken", csrftoken);
        }
    });


    $.get("http://localhost:8000/v1/getAuthID?username=testuser1&password=123", function(data){
        authid = data["authid"];

        url = "http://localhost:8000/v1/file".replace("{authid}", authid).replace("{token}", csrftoken)
        $.post(url, function(data){
        })
    })
})
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Django X-CSRFToken 已设置但仍然收到 403 禁止 的相关文章

  • 从networkx中的文件中读取具有pos属性的节点

    我是 Networkx 的新手 我有一个包含以下格式的节点位置的文件 0 23 23 12 23 where 0是一个节点 23 23 and 12 23分别是X和Y坐标 有谁知道如何读取节点pos属性 使用类似的函数read edgeli
  • 如何在redis中使用python删除排序集中的项目

    如何使用 python 删除排序集中大于某个值的项目 key foo pipe redis master conn pipeline pipe zadd key 1 a pipe zadd key 2 b pipe zadd key 3 c
  • Python:访问另一个类中一个类的属性和方法

    假设我有两个 A 类和 B 类 Class A A s attributes and methods here Class B B s attributes and methods here 现在我可以评估 B 类对象中 A 的属性 如下所
  • Django CollectStatic 启动大文件上传时管道损坏

    我正在尝试使用collectstatic将静态文件上传到我的S3存储桶 但我收到一个700k javascript文件的管道损坏错误 这就是错误 Copying Users wedonia work asociados server aso
  • 使用 cx_oracle 返回 MERGE 中受影响的行数

    如何在 CX Oracle 中执行 MERGE INTO sql 命令来获取受影响的行数 当我在cx oracle 上执行MERGE SQL 时 我得到的cursor rowcount 为 1 有没有办法获取受合并影响的行数 由于 cx o
  • 并行执行按位运算的代码

    我有这段代码 通过将该 AU 矩阵的每个字节 8 个元素打包到 A 中来减少内存消耗 从而使 100k 200k 矩阵占用更少的空间 正如您所期望的 这段代码需要永远运行 我也计划将行数增加到 200k 我正在一个非常强大的实例 CPU 和
  • 为什么 scikit-learn SVM.SVC() 非常慢?

    我尝试使用SVM分类器来训练大约10万个样本的数据 但我发现它非常慢 甚至两个小时后也没有任何反应 当数据集有大约 1k 个样本时 我可以立即得到结果 我还尝试了 SGDClassifier 和朴素贝叶斯 速度相当快 几分钟内就得到了结果
  • python osmnx - 仅提取一个国家的大型高速公路

    我知道可以通过 OSMNX python 包提取城市的道路网络 详情请参阅https geoffboeing com 2016 11 osmnx python street networks https geoffboeing com 20
  • 如何向 Jupyter (ipython) 笔记本自动添加扩展?

    我已经安装了扩展 calico document tools 我可以使用以下命令从 Jupyter 笔记本中加载它 javascript IPython load extensions calico document tools 如何为每个
  • Python父类访问子私有变量

    以下代码会生成错误 class A object def say something self print self foo print self bar class B A def init self self foo hello sel
  • 构建wheel失败/“错误:INCLUDE环境变量为空”

    我正在使用 Python 2 7 11 并尝试 pip install 模块 但是其中一些模块失败了 我收到的消息是 无法为 X 构建轮子 和 错误 包含环境变量为空 我尝试安装 Scrapy LXML 和 Twisted 但都失败了 我尝
  • python请求ssl握手失败

    每次我尝试这样做 requests get https url 我收到这条消息 import requests gt gt gt requests get https reviews gethuman com companies Trace
  • pip 升级到 pip 10.x.x 后解析需求文件的正确方法?

    所以今天我确实发现随着发布pip 10 x x the req软件包更改了其目录 现在可以在下面找到pip internal req 由于通常的做法是使用parse requirements功能在你的setup py从需求文件中安装所有依赖
  • Python - 从一定范围内随机采样,同时避免某些值

    我一直在阅读有关random sample 函数在random模块 但没有看到任何可以解决我的问题的东西 我知道使用random sample range 1 100 5 会给我来自 人群 的 5 个独特样本 我想得到一个随机数range
  • matplotlib 后端 - 我关心吗?

    gt gt gt import matplotlib gt gt gt print matplotlib rcsetup all backends u GTK u GTKAgg u GTKCairo u MacOSX u Qt4Agg u
  • 用于监视文件夹和更新数据库的 Python 守护进程

    这专门用于管理 MP3 文件 但它应该可以轻松地适用于任何包含大量文件的目录结构 我想找到或编写一个守护程序 最好用Python 来监视一个包含许多子文件夹的文件夹 这些子文件夹都应该包含X个MP3文件 每当添加 更新或删除文件时 它都应该
  • 为什么变量 1 += 变量 2 比变量 1 = 变量 1 + 变量 2 快得多?

    我继承了一些 Python 代码 用于创建巨大的表 最多 19 列宽 5000 行 花了九秒用于在屏幕上绘制表格 我注意到每一行都是使用以下代码添加的 sTable sTable n GetRow where sTable是一个字符串 我将
  • VSCode IntelliSense 认为 Python 'function()' 类存在

    VSCode IntelliSense 正在完成一个名为的 Python 类function 这似乎不存在 例如 这似乎是有效的代码 def foo value return function value foo 0 But functio
  • print() 函数的有趣/奇怪的机制

    我正在学习Python 我目前正在学习如何定义自己的函数 并且在尝试理解返回值和打印它之间的区别时遇到了一些困难 我读到的关于这个主题的描述对我来说不太清楚 所以我开始自己尝试 我想我现在已经明白了 如果我没记错的话 区别在于你可以传递 a
  • 合并共享属性的节点

    EDITED 我真的需要 Networkx graph 专家的帮助 假设我有以下数据框 我想将这些数据框转换为图表 然后我想根据描述和优先级属性将两个图映射到相应的节点 df1 From description To priority 10

随机推荐

  • 如何删除通过 Chocolatey 安装的软件包?

    我使用安装了 gittfs cinst gittfs 现在如何删除 gittfs 软件包 Use cuninst packagename See 卸载命令 https chocolatey org commands uninstall了解详
  • 如何配置 Play 应用程序以使用 Let's Encrypt 证书?

    获得证书后 如何从中生成 JKS 密钥存储 如何配置 Play 应用程序以使用此密钥存储 我还需要做什么吗 以下是获取 更新 letsencrypt 证书的脚本 bin bash path to your app stop stop the
  • Vuetifyjs 错误未知的自定义元素:您是否正确注册了组件

    我使用 vuetify 构建模板但收到错误 unknown custom element dashboard did you register the component correctly 这是我的代码 In the main js im
  • 如何在div内部垂直顶部对齐div?

    我试图在 div 内顶部对齐 div 但没有成功 http jsfiddle net jhbs31xv http jsfiddle net jhbs31xv table style border 1px solid red width 10
  • jquery .text() 和 unicode

    我想显示 开锁 字符 http www fileformat info info unicode char 1f513 index htm在我的 HTML 链接文本中 如果我直接这样做 它会正确显示 a x1f512 a 但我发现没有办法用
  • 创建 DOMElement Objective C 的位图

    我有一个 Webkit DOMElement 例如一个 div 现在我想要它的渲染 NSImage 或 NSBitmapImageRep 它就像 DOMElement 的屏幕截图 公共 API 选择 NSView cacheDisplayI
  • 使 PXButton 显示为铅笔图标

    我想在我的页面上放置一个按钮 允许重定向到自定义处理页面 但该按钮必须是铅笔图标 例如在控件上使用AllowEdit True 时 我有以下 asp net
  • Java BigDecimal 区别

    我想看看是否有人可以解释为什么以下代码适用于 valueOf 而不适用于其他代码 import java math BigDecimal public class Change public static void main String
  • XCode 4.2 停止界面生成器自动缩放

    每当我更改所选控件时 有什么方法可以阻止 XCode 4 中的 IB 缩放以尝试填充屏幕 尝试在 1440x900 笔记本电脑屏幕上开发 iPad 故事板让我抓狂 这使得在屏幕上放置大块几乎是不可能的 有谁知道一些隐藏的偏好迫使 XCode
  • 如何在 matplotlib 中对齐刻度标签?

    我正在尝试使用 matplotlib 构建信息图 并且想要左对齐所有 y 轴的刻度标签 我想将所有刻度标签移至左侧 我希望它们都从与以下相同的 x 位置开始District of Columbia 我尝试使用Axes set ytickla
  • python中的有效年份函数

    这是 udacity com 网络开发课程 他们要求编写一个有效年份的程序 1900 年到 2020 年之间的任何年份都是有效年份 现在 当我提交以下代码时 它给出了此错误 不正确 您的提交未返回输入 1920 的正确结果 您的提交通过了
  • 如何从异步调用返回响应?

    如何从函数返回响应 结果foo发出异步请求 我试图从回调中返回值 并将结果分配给函数内的局部变量并返回该变量 但这些方法都没有实际返回响应 它们都返回undefined或者无论变量的初始值如何result is 接受回调的异步函数示例 使用
  • 测试内联表单集清理方法

    我有一个 Django 项目 有 2 个模型 一个Structure and Bracket 括号具有结构的外键 即一对多 一个结构有多个括号 我创建了一个TabularInline对于管理站点 这样结构上就会有一个括号表 我添加了一个自定
  • 下面的 C 程序的输出是什么? [复制]

    这个问题在这里已经有答案了 char getString char str Will I be printed return str int main printf s getString getchar 输出不应该是 我会被打印吗 相反
  • RcppEigen 包“#pragma clang Diagnostic pop”警告

    我在尝试使用时遇到一些问题RcppEigen包裹 我使用了发布的示例here http gallery rcpp org articles eigen eigenvalues 该函数有效 但 R 生成了一系列类似的警告 示例如下 In fi
  • C++中return语句后可以执行代码吗? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我是一名java程序员 刚刚接触C
  • Ember.js 中按钮的绑定启用状态

    我刚刚开始接触 Ember js 但我遇到了一些我确信我不理解的东西 我有一个选定的对象控制器 它有一个 Ember Object 内容 即当前选择的模型 该模型有一个属性 isDirty 基本上我希望仅当对象脏且需要保存时才启用表单上的保
  • 是否可以在 UITabBarController 内显示 SFSafariViewController?

    我要加载SFSafariViewController位于选项卡内部 因此选项卡栏位于整个 Safari 视图的底部 这可能吗 我尝试了这个但没有运气 self tabBarController presentViewController s
  • jsp ${pageContext.request.contextPath} 未收到请求

    目前我有一个 jsp 项目 其中我的欢迎页面是一个 servlet
  • Django X-CSRFToken 已设置但仍然收到 403 禁止

    我开发了一个 Django 文件上传 API 它接收来自客户端的发布数据并将数据保存为文件 根据Django CSRF 手册 https docs djangoproject com en 1 8 ref csrf HTTP 请求标头应使用