rest_framework(解析器 上)
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')
原谅我这一生不羁放纵爱自由