rest_framework(解析器 上)

本文介绍如何使用rest_framework解析器处理不同格式的数据请求,包括JSON和表单数据,并通过示例展示了具体的实现方法。
rest_framework 解析器 对请求题数据进行解析

url
from django.conf.urls import url,include
from cmdb import views
urlpatterns = [
    url(r'^(?P<version>[v1|v2]+)/users/$',views.UsersView.as_view(),name='user'),
    url(r'^(?P<version>[v1|v2]+)/django/$',views.DjangoView.as_view(),name='ddd'),
    url(r'^(?P<version>[v1|v2]+)/parser/$',views.ParserView.as_view()),
]

视图 views.py
from rest_framework.parsers import JSONParser,FormParser
class ParserView(APIView):
    parser_classes = [JSONParser,FormParser]  #如果是这样就可以解析两种头了
    #JSONParser:表示只能解析content-type:application/json头
    #FormParser:表示只能解析content-type:application/x-www-form-urlencoded头
    def post(self,request, *args, **kwargs):
        """
        允许用户发送JSON格式数据
            a. content-type: application/json
            b. {'name':alex, age:18}
        :param request:
        :param args:
        :param kwargs:
        :return:
        """

        """
        1.获取用户的请求
        2.获取用户的请求体  记得双引号
        3.根据用户请求头和parser_classes = [JSONParser,FormParser,] 中支持的请求头进行比较
        4.JSONParser对象去请求体
        5.request.data
        """
        print(request.data)  #data表示获取解析后的结果
        return HttpResponse('ParserView')

 

转载于:https://www.cnblogs.com/Liang-jc/p/9326806.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值