首页 > 解决方案 > 将标头值传递给 django 中的获取请求

问题描述

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

我正在尝试以下方法,但它不起作用,

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
      """

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

在此处输入图像描述

谁能帮我解决这个问题,非常感谢。

标签: pythondjangodjango-rest-framework

解决方案


你自己说的,你在标题中传递它,所以你需要从那里得到它。DRF 没有做任何特殊的事情来访问标头,因此它代理了底层的 Django HttpRequest 对象,这使得它们可以通过META属性,转换为大写并以 为前缀HTTP_

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

推荐阅读