码迷,mamicode.com
首页 > 其他好文 > 详细

102:限制请求method装饰器

时间:2019-02-19 23:32:43      阅读:382      评论:0      收藏:0      [点我收藏+]

标签:请求   size   取数据   views   请求方式   常用   安全   view   get   

常用的请求method:

  • GET请求:GET请求一般用来向服务器索取数据,但不会向服务器提交数据,不会对服务器的状态进行更改。比如向服务器获取某篇文章的详情。
  • POST请求:POST请求一般是用来向服务器提交数据,会对服务器的状态进行更改。比如提交一篇文章给服务器。

限制请求装饰器:

Django内置的视图装饰器可以给视图提供一些限制。比如这个视图只能通过GETmethod访问等。以下将介绍一些常用的内置视图装饰器。

1、django.http.decorators.http.require_http_methods:这个装饰器需要传递一个允许访问的方法的列表。比如只能通过GET的方式访问。那么示例代码如下:

 from django.views.decorators.http import require_http_methods

 @require_http_methods(["GET"])
 def my_view(request):
     pass

2、django.views.decorators.http.require_GET:这个装饰器相当于是require_http_methods([‘GET‘])的简写形式,只允许使用GETmethod来访问视图。示例代码如下:

 from django.views.decorators.http import require_GET

 @require_GET
 def my_view(request):
     pass

3、django.views.decorators.http.require_POST:这个装饰器相当于是require_http_methods([‘POST‘])的简写形式,只允许使用POSTmethod来访问视图。示例代码如下:

 from django.views.decorators.http import require_POST

 @require_POST
 def my_view(request):
     pass

4、django.views.decorators.http.require_safe:这个装饰器相当于是require_http_methods([‘GET‘,‘HEAD‘])的简写形式,只允许使用相对安全的方式来访问视图。因为GETHEAD不会对服务器产生增删改的行为。因此是一种相对安全的请求方式。示例代码如下:

 from django.views.decorators.http import require_safe

 @require_safe
 def my_view(request):
     pass

示例工程如下:

 

102:限制请求method装饰器

标签:请求   size   取数据   views   请求方式   常用   安全   view   get   

原文地址:https://www.cnblogs.com/zheng-weimin/p/10404036.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!