我正在努力使中间件,改变用户的一些字段的子域等基础上,.
唯一的问题是请求,用户在中间件中总是以匿名用户的身份进入,但在视图中却是正确的用户.我在设置中保留了Django使用的默认身份验证和会话中间件.
这里有一个类似的问题:Django, request.user is always Anonymous User
在使用DRF的同时,有没有办法在中间件中获取request.user呢?我将在这里展示一些示例代码:
class SampleMiddleware(object):
def process_view(self, request, view_func, view_args, view_kwargs):
#This will be AnonymousUser. I need it to be the actual user making the request.
print (request.user)
def process_response(self, request, response):
return response
使用PROCESS_REQUEST:
class SampleMiddleware(object):
def process_request(self, request):
#This will be AnonymousUser. I need it to be the actual user making the request.
print (request.user)
def process_response(self, request, response):
return response