django获取请求进来的IP
你可以创建一个中间件来检查请求的IP地址是否在白名单中。如果不在,就拒绝访问。
from django.http import HttpResponseForbidden class WhiteListMiddleware: def __init__(self, get_response): self.get_response = get_response self.white_list = ['127.0.0.1', '192.168.1.100'] def __call__(self, request): if request.META['REMOTE_ADDR'] not in self.white_list: return HttpResponseForbidden('Access Forbidden') response = self.get_response(request) return response
|
然后,在settings.py中添加这个中间件:
MIDDLEWARE = [ 'path.to.your.WhiteListMiddleware', ]
|