凉城旧巷
Python从入门到自闭,Java从自闭到放弃,数据库从删库到跑路,Linux从rm -rf到完犊子!!!
posts - 315,comments - 20,views - 38万

解析器

一、解析器的作用

根据请求头 content-type 选择对应的解析器对请求体内容进行处理,将传过来的数据解析成字典

二、使用解析器

1、局部使用

在视图类中重定义parser_classes即可,默认能够解析formdata、urlencoded、json格式的数据

from rest_framework.parsers import JSONParser,FormParser

class Test(APIView):
    # 定义两个,表示该是视图类,能够解析urlencoded和json格式的数据
    parser_classes = [FormParser,JSONParser,]
    def get(self, request):
        print(type(request._request))
        return HttpResponse('ok')
    

2、全局使用

在setting中配置DEFAULT_PARSER_CLASSES

REST_FRAMEWORK = {
				'DEFAULT_PARSER_CLASSES':[
					'rest_framework.parsers.JSONParser',
				]
			}

3、全局使用后,局部使用指定解析器

REST_FRAMEWORK = {
				'DEFAULT_PARSER_CLASSES':[
					'rest_framework.parsers.JSONParser',
				]
			}



from rest_framework.parsers import JSONParser,FormParser

class Test(APIView):
    # 定义两个,表示该是视图类,能够解析urlencoded和json格式的数据
    parser_classes = [FormParser,]
    def get(self, request):
        print(type(request._request))
        return HttpResponse('ok')
posted on   凉城旧巷  阅读(201)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示