在Django中将标头值传递给get请求

时间:2018-10-22 17:13:43

标签: python django django-rest-framework

我想通过get请求的标头传递一个值。

我正在尝试以下操作,但不起作用,

class ListCategoriesView(generics.ListAPIView):
"""
Provides a get method handler.
"""
serializer_class = CategorySerializer

def get(self, request, *args, **kwargs):
    token = request.data.get("token", "")
    if not token:
      """ 
          do some action here
      """
    if not UserAccess.objects.filter(accessToken=token).exists():
      """ 
          do some action here
      """
    else:
      """ 
          do some action here
      """

我想像这样在标头中传递令牌:

enter image description here

有人可以帮我解决这个问题, 非常感谢。

1 个答案:

答案 0 :(得分:1)

您自己说过的,您正在标题中传递它,因此您需要从那里获取它。 DRF对访问标头没有做任何特殊的事情,因此它代理底层的Django HttpRequest对象,这使它们可以通过META attribute使用,转换为大写并以HTTP_为前缀:

token = request.META.get("HTTP_TOKEN", "")