1. 程式人生 > 實用技巧 >Django限制請求method

Django限制請求method

限制請求裝飾器:

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