django rest freamwork 禁止herder diaoyong
时间: 2023-12-06 09:45:40 浏览: 62
如果你想禁止HTTP请求中的header信息,你可以在Django REST Framework中使用一个自定义的中间件。以下是一个示例:
```python
from django.http import HttpResponseForbidden
class NoHTTPHeaderMiddleware:
def __init__(self, get_response):
self.get_response = get_response
def __call__(self, request):
# 如果请求中包含header信息,则返回403禁止访问
if request.META.get('HTTP_X_MY_HEADER'):
return HttpResponseForbidden()
response = self.get_response(request)
return response
```
将这个中间件添加到settings.py中的MIDDLEWARE中即可:
```python
MIDDLEWARE = [
# ...其他中间件...
'myapp.middleware.NoHTTPHeaderMiddleware',
]
```
这样,如果请求中包含`X-MY-HEADER`,则会返回403禁止访问。
阅读全文