我在Django工作,我想只将一些中间件应用于HTML页面 - 而不是图像,js,css等。这是为了减少服务器上的请求数量。
这是我的中间件代码:
class checkLdapUser:
def process_request(self, request):
if response.META['CONTENT_TYPE'] is 'text/html':
# check the LDAP user here
else:
return None
如何查看CONTENT_TYPE
?
谢谢!
更新:
工作代码:
def process_response(self, request, response):
if response.get('Content-Type', '')=='text/html':
# do stuff
return response
答案 0 :(得分:2)
您走在正确的轨道上,但您需要将该代码放在process_response
而不是process_request
中。后者在您的视图代码处理请求之前运行,因此它无权访问响应及其内容类型。