【Django基础教程】修饰器require_GET

django, require_GET, require_POST

我们一般再接触HTTP接口的时候,通常由GET 和 POST两者方式,当然还有其他方式啊

当Django如何区分并要求GET 或者 POST呢?

方法一

通过request.method判断

1
2
3
4
5
6
7
def get(request):
if request.method == 'POST:
# do something
elif request.method == 'GET':
# do something

return HttpResponse()

当然可以判断,但是这种方法显得很累赘

方法二

通过request_GET、request_POST等修饰器语法

1
2
3
4
5
6
7
8
9
10
11
12
# 引入模块
from django.views.dicorators.http import require_GET, require_POST

@require_GET
def get(request):
# do something
return HttpResponse()

@request_POST
def form_submit(request):
#do something
return HttpResponse()

require_GET 表示只接受 get 请求,如果是 post 等其他请求,则报错
require_POST 表示只接受 post 请求,如果是 get 等其他请求,则报错

坚持原创技术分享,谢谢鼓励我继续创作!