Django 接收自定义请求头部(headers)详解

前端之家收集整理的这篇文章主要介绍了Django 接收自定义请求头部(headers)详解前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

用Django做后台,客户端向Django请求数据,为了区分不同的请求,想把每个请求类别加在HTTP头部(headers)里面,需要从请求头中提取对应的参数。提取方法如下:

如何获取

通过view函数传递过来的 reuqest,使用request.Meta.get("header key")来获取

代码

from django.views import View
from django.http import HttpResponse

class ApiView(View):
    def get(self, request):
        ua = request.Meta.get('HTTP_USER_AGENT', 'unknown')
        return HttpResponse("Your browser is %s" % ua)

注意:

  1.   header key必须大写,且前缀必须是"HTTP",例如你的key为username,那么应该写成:request.Meta.get("HTTP_USERNAME")

  2.  后面如果连接符是横线“-”,会自动转换成下划线“_”。例如你的header的key为api-auth,那在Django中应该使用request.Meta.get("HTTP_API_AUTH")来获取请求头的数据。


django HttpRequest.Meta文档:

https://docs.djangoproject.com/en/2.2/ref/request-response/

猜你在找的Django相关文章