如何在django中解析请求

时间:2015-12-23 07:25:51

标签: django django-templates django-views

您好我正在制作一个网络服务器,我必须从html页面点击一些请求并返回响应。使用html生成的URL是

http://192.168.2.253:8080/searchSMS/?KPImsgId=0&circle=&subId=&startDate=DD-MM-YYYY&endDate=DD-MM-YYYY&Username=ashish

但在服务器端,我无法看到请求数据。我在用 q = QueryDict(request.body),但它显示<QueryDict: {}>

如何查找请求中的所有参数。

1 个答案:

答案 0 :(得分:3)

如果您在网址中发送数据,请通过request.GET访问数据,如下所示:

username = request.GET.get('Username')
start_date = request.GET.get('startDate')
# ... the same for all the other parameter after the `?` marque.

事实上request datarequest.bodyrequest.GETrequest.POST之间存在差异:

  • 如果您要向django 功能视图基于班级的视图发送POST请求:您可以访问request.bodyrequest.POST中的请求数据。
  • 如果要向Django REST Framework发送POST请求:您可以访问request.data中的数据。您也可以在Internet request.DATA中找到正确的但在较新版本的DRF中不推荐使用它而不是request.data。
  • 如果您在网址中发送参数,请按照上述说明访问数据表单request.GET