django.views.decorators.http 包里的装饰器可以基于请求的方法来限制对视图的访问。

限制视图只能服务规定的http方法。用法:

from django.views.decorators.http import require_http_methods, require_GET, require_POST
# @require_http_methods(['GET','POST'])#必须大写
@require_GET
# @require_POST
def tags(request):
print("hello")
return render(request,'mytags.html')
注意,方法名必须大写。

require_GET()

只允许视图接受GET方法的装饰器。

require_POST()

只允许视图接受POST方法的装饰器。

require_safe()

只允许视图接受 GET 和 HEAD 方法的装饰器。 这些方法通常被认为是安全的,因为方法不该有请求资源以外的目的。

Django 会自动清除对HEAD 请求的响应中的内容而只保留头部,所以在你的视图中你处理HEAD 请求的方式可以完全与GET 请求一致。因为某些软件,例如链接检查器,依赖于HEAD 请求,所以你可能应该使用require_safe 而不是require_GET

django请求限制的更多相关文章

  1. django请求生命周期,FBV和CBV,ORM拾遗,Git

    一.django 请求生命周期 流程图: 1. 当用户在浏览器中输入url时,浏览器会生成请求头和请求体发给服务端请求头和请求体中会包含浏览器的动作(action),这个动作通常为get或者post, ...

  2. Django请求流程图

    Django请求流程图

  3. python 全栈开发,Day84(django请求生命周期,FBV和CBV,ORM拾遗,Git)

    一.django 请求生命周期 流程图: 1. 当用户在浏览器中输入url时,浏览器会生成请求头和请求体发给服务端请求头和请求体中会包含浏览器的动作(action),这个动作通常为get或者post, ...

  4. django请求的生命周期

    1. 概述 首先我们知道HTTP请求及服务端响应中传输的所有数据都是字符串. 在Django中,当我们访问一个的url时,会通过路由匹配进入相应的html网页中. Django的请求生命周期是指当用户 ...

  5. Django 请求参数

    Django 请求参数 1.获取URL路径中的参数 需求:假设用户访问127.0.0.1/user/1/2,你想获取1,2.应该怎么操作呢? (1)未命名参数(位置参数) # 在项目下的urls.py ...

  6. Django请求生命周期之响应内容

    Django请求生命周期: 1.发送http请求2.服务器接受,根据请求头中的url在路由关系表中进行匹配(从上到下)3.匹配成功后,执行指定的views函数 URL -> 函数 ==>F ...

  7. Django组件 - Django请求生命周期、中间件

    一.Django请求生命周期 在学习中间件之前,先了解一下Django的请求生命周期,如下图: 1)client代表浏览器,浏览器内部为我们封装了socket,Django的WSGI模块也封装了soc ...

  8. Django 请求生命周期【图示】

    Django 请求生命周期

  9. 由django请求生命周期延伸出的知识点大总结

    django项目搭建见: https://www.cnblogs.com/dongxixi/p/10981577.html django请求生命周期图: 由浏览器发起请求开始 知识点1: 浏览器与服务 ...

  10. Django框架深入了解_01(Django请求生命周期、开发模式、cbv源码分析、restful规范、跨域、drf的安装及源码初识)

    一.Django请求生命周期: 前端发出请求到后端,通过Django处理.响应返回给前端相关结果的过程 先进入实现了wsgi协议的web服务器--->进入django中间件--->路由f分 ...

随机推荐

  1. sqlite删除数据

    sqlite删除数据 某日, 在使用sqlite的时候发现查询速度极慢, 查看了一下文件大小, sqlite数据库文件已经达到了 22G! 对于一个文件数据库来说, 已经相当致命了,先不说后面如果解决 ...

  2. VS一个奇怪的发布问题

    同事的环境,发布项目时一直提示找不到某dll,在引用及bin里未发现黄色感叹号,后来发现问题是因为项目文件不小心包含了一个外部bin目录,并且该bin目录中的dll删除导致的.

  3. 如何在Quartus II中查看RTL原理图

    整个工程代码编写并且编译完成之后,标题栏选择Tools→Netlist Viewers→RTL Viewer即可

  4. 【转】用VMware 8安装Ubuntu 12.04详细过程(图解)

    图解演示环境版本: 本机系统: WIN7 虚拟机:VMware Workstation 8 (英文版) 安装目标:Ubuntu Desktop 12.04 LTS  (请点击这里)先下载好iso镜像文 ...

  5. python 练习题:请利用Python内置的hex()函数把一个整数转换成十六进制表示的字符串

    # -*- coding: utf-8 -*- # 请利用Python内置的hex()函数把一个整数转换成十六进制表示的字符串 n1 = 255 n2 = 1000 print(hex(n1)) pr ...

  6. SQLServer之行数据转换为列数据

    准备工作 创建表 use [test1] go create table [dbo].[student]( ,) not null, ) null, ) null, [score] [int] nul ...

  7. 【翻译】tus----一个可续传文件上传的开放协议

    tus tus是一个可续穿文件上传协议,它以Http协议为载体,统一了一个文件断点续传的标准. 这篇文章翻译自https://tus.io/ 目前该协议版本信息如下: Version: 1.0.0 ( ...

  8. Linux之IO

    速度差异 I/O不仅仅是硬盘,还包括外围的所有设备,比如键盘鼠标,比如1.44M的3.5英寸软盘(还有人记得么).但服务器环境,泛指硬盘. 硬盘有多慢呢?我们不去探究不同设备的实现细节,直接看它的写入 ...

  9. beyond compare全文件夹比较,仅显示变化的文件

    beyond  compare是一款非常优秀的文件夹同步比较工具,赞. 非常强大的一点就是给定两个文件夹可以自动列出所有不同的文件和子文件夹,但是有一点可能很多人碰到过,也就是需要一个个点开才能重新比 ...

  10. vue-cli vue脚手架搭建步骤

    提前在E:\nodejs文件夹下建立node_gobal和node_cache 并配置环境变量NODE_PATH:E:\nodejs\node_global\node_modules 改变用户变量中的 ...