【Django】测试带有 CSRF 验证的 POST 表单 API 报错:Forbidden (CSRF cookie not set.)

【Django】测试带有 CSRF 验证的 POST 表单 API 报错:Forbidden (CSRF cookie not set.)

问题描述

Django 使用 Apifox 测试 POST 表单报错。

bash 复制代码
Forbidden (CSRF cookie not set.): /api/parse
[20/Dec/2024 15:17:25] "POST //api/parse HTTP/1.1" 403 2855

原因分析

要在使用 Apifox 测试 Django 应用程序时处理 CSRF 验证,需要确保在请求中包含 CSRF 令牌。

解决方案

  1. 发送一个 GET 请求到您的 Django 应用程序的某个页面。

  2. 在响应头部或响应体中查找 CSRF 令牌。Django 通常会在响应的 cookies 中设置 CSRF 令牌,或者在 HTML 表单中包含一个隐藏的输入字段。

  3. 在 Apifox 中创建一个新的请求,将获取到的 CSRF 令牌添加到请求的头部或表单数据中。可以将 CSRF 令牌需要添加到请求头部的 X-CSRFToken 字段中。

相关推荐
小江的记录本8 分钟前
【JVM虚拟机】类加载机制:类加载器、双亲委派模型、好处、破坏双亲委派的场景(附《思维导图》+《面试高频考点清单》)
java·jvm·spring boot·后端·python·spring·面试
小陶来咯15 分钟前
FunctionCall实现与Prompt调优
python·ai·prompt
AI 编程助手GPT31 分钟前
ChatGPT 新手入门与实战操作指南
开发语言·人工智能·git·python·chatgpt
原创小甜甜37 分钟前
OOM 排查复盘:Hutool 序列化 Request 导致 Java Heap Space
java·开发语言·python
gf132111140 分钟前
【精确查找python脚本是否在运行】
linux·前端·python
zhangfeng113341 分钟前
DeepSeek V4 适配华为昇腾950 难度及开源情况
人工智能·pytorch·python·机器学习·华为·开源
MU在掘金916951 小时前
给AI Agent做一个代码大脑:我用Tree-sitter+ChromaDB+MCP搭了个代码知识库
git·python
噜噜噜阿鲁~1 小时前
python学习笔记 | 11.5、面向对象高级编程-使用枚举类
笔记·python·学习
包子BI大数据1 小时前
2.COZE-RAG知识库搭建
python·ai·aigc
七夜zippoe1 小时前
DolphinDB自定义函数:UDF开发指南
开发语言·python·自定义函数·udf·dolphindb