微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何从Django装饰器获取请求值

如何解决如何从Django装饰器获取请求值

在我的装饰器中:

def check_user_identity(function):
    def wrap(request,*args,**kwargs):
        response_check_user = mock_response.check_user_identity(requested_data=request.data['msisdn'])
        if response_check_user['status'] == SUCCESS_CODE:
            return function(request,**kwargs)
        return Response(data=INVALID_USER,status=status.HTTP_400_BAD_REQUEST)

    wrap.__doc__ = function.__doc__
    wrap.__name__ = function.__name__
    return wrap

在我看来: 在这里,request参数具有我请求继续执行的值。首先调用装饰器。我想从装饰器访问我的请求数据。

class VerifyWallet(APIView):
    @check_user_identity
    def post(self,request):
        logger.debug(msg=request.data)
        serializer = VerifyWalletSerializer(data=request.data)
        if not serializer.is_valid():
            logger.error(msg=serializer.errors)
            return Response(data=serializer.errors,status=status.HTTP_400_BAD_REQUEST)
        return Response(data='success',status=status.HTTP_200_OK)

解决方法

经过我所有的搜索,我找到了答案。值在 args[0] 中。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。