我有Django的1.10项目及以下用户定义的中间件编辑响应contect
class RequestLogMiddleWare(object):
def __init__(self, get_response):
self.get_response = get_response
def __call__(self, request):
response = self.get_response(request)
response.data['detail'] = 'I have been edited'
return response
和REST的端点观点:
def r_mobile_call_log(request):
return Response({'success': True,
'detail': 'Before having been edited'},
status=status.HTTP_200_OK)
,所以我期望的最终响应客户端是:
{'success': 'True', 'detail': 'I have been edited'}
不过,我看到的是:
{'success': 'True', 'detail': 'Before having been edited'}
我在中间件的调用方法中放置了一个断点,以确保该函数真正执行,并且没关系。 response.data["details"]
只是不会改变它的价值。任何人都知道这是什么原因? 预先感谢您