Django 常用注解

embedded/2024/9/25 7:16:38/

@require_http_methods(["POST"])

  • @require_http_methods(["POST"]) 是 Django 提供的装饰器,确保该视图函数只能处理指定的 HTTP 方法(如 POST 请求)。
  • 如果客户端使用其他的 HTTP 方法(如 GET, PUT, DELETE),Django 会自动返回 HTTP 405 (Method Not Allowed) 错误。
  • 它的作用是简化对 HTTP 方法的限制,而不用手动在视图里检查 request.method

没有@require_http_methods注解,需要方法内部自己if request.method == 'POST':

import json
from django.http import JsonResponse
from django.views.decorators.csrf import csrf_exempt@csrf_exempt  # 如果你没有启用 CSRF token 可以加上这个装饰器, 但要注意安全性
def add_car(request):if request.method == 'POST':try:# 读取并解析 JSON 请求体data = json.loads(request.body.decode('utf-8'))# 从 JSON 数据中获取参数car_name = data.get('name')car_model = data.get('model')# 在这里可以处理接收到的数据,例如保存到数据库# Car.objects.create(name=car_name, model=car_model)return JsonResponse({'status': 'success', 'message': 'Car added successfully'})except json.JSONDecodeError:return JsonResponse({'status': 'error', 'message': 'Invalid JSON'}, status=400)else:return JsonResponse({'status': 'error', 'message': 'Invalid request method'}, status=405)

@csrf_exempt:

禁用视图的 CSRF 保护,不注释全局csrf中间件,使用此注解即可完成单个请求的csrf保护取消


http://www.ppmy.cn/embedded/116502.html

相关文章

Docker自定义构建镜像dockerfile和使用数据卷

Docker自定义构建镜像dockerfile和使用数据卷 DockerFile Dockerfile 是一个文本文件,包含了一系列用于构建 Docker 镜像 的指令和配置信息。通过编写 Dockerfile ,用户可以定义镜像的构建过程,包括基础镜像、运行命令、设置环境变量、暴露…

sprintf()函数的介绍及其用法

目录 前言 一:sprintf()函数的介绍 二:sprintf()函数的原型 三:sprintf()函数的用法 1.控制输出格式 2.将数字转化成字符串 3.拼接字符串 4.当然,也可…

window.onload什么时候执行

window.onload 事件在页面的所有资源(包括样式表、脚本文件、图片等)都加载完成后立即执行。这意味着,在 window.onload 事件的处理函数中,你可以安全地引用页面上的所有元素,因为此时它们都已经加载到DOM中&#xff0…

OpenMV与STM32通信

在现代嵌入式系统中,图像处理和微控制器的结合成为一种重要趋势。OpenMV模块能够快速处理图像数据,并通过串行接口与STM32微控制器进行通信,从而实现复杂的多功能应用。本指南将介绍如何配置OpenMV与STM32通信,并通过实际案例使读…

0基础学习HTML(十七)字符字体

HTML 字符实体 HTML 中的预留字符必须被替换为字符实体。 一些在键盘上找不到的字符也可以使用字符实体来替换。 HTML 实体 在 HTML 中&#xff0c;某些字符是预留的。 在 HTML 中不能使用小于号&#xff08;<&#xff09;和大于号&#xff08;>&#xff09;&#xff…

JetLinks物联网学习(前后端项目启动)

前后端项目启动 1、后端1.1 pgsql改mysql报错2、elasticSearch7.0版本以上_doc格式取消 2、前端 1、后端 环境准备&#xff1a; 1、window系统7,8&#xff0c;10 。 硬件资源最低要求4c8G&#xff0c;硬盘40G 2、JDK 1.8.0_2xx (需要小版本号大于200) 3、Maven3.6.3 4、Redis …

Go版数据结构 -【1.1 数据结构的分类与基本概念】

1.1 数据结构的分类与基本概念 本节我们将对数据结构的基本概念以及分类进行讲解&#xff0c;数据结构有很多种&#xff0c;但是主要也就是集中于几种类型&#xff0c;本节我们将进行逐一讲解。 什么是数据结构&#xff1f; 按照标准说法&#xff0c;数据结构指的是在计算机…

毕设基于SSM+Vue3实现设备维修管理系统四:后台框架及基础增删改查功能实现

本章介绍后端基础框架及基础的增删改查功能实现&#xff0c;创建基础的dao、service即controller层相关的基类&#xff0c;并实现基础的增删改查相关功能。 源码下载&#xff1a;点击下载 讲解视频&#xff1a; SMMVUE3实现设备维修管理系统毕设&#xff1a;后端框架搭建及表外…