django的中间件 允许访问/wiki/categories/<str:category>/page/
时间: 2023-08-28 07:06:03 浏览: 175
要允许访问 `/wiki/categories/<str:category>/page/`,可以编写一个 Django 中间件来实现。下面是一个简单的示例中间件:
```python
from django.http import Http404
class WikiMiddleware:
def __init__(self, get_response):
self.get_response = get_response
def __call__(self, request):
# 获取请求路径
path = request.path_info
# 如果请求路径匹配 /wiki/categories/<str:category>/page/
if path.startswith('/wiki/categories/') and '/page/' in path:
# 允许访问
return self.get_response(request)
# 否则抛出 404 异常
raise Http404('Page not found')
```
将上述代码保存为一个 Python 文件,如 `wiki_middleware.py`,然后将其添加到 Django 项目的 `MIDDLEWARE` 设置中:
```python
MIDDLEWARE = [
# ...
'path.to.WikiMiddleware',
]
```
这样,访问 `/wiki/categories/<str:category>/page/` 将会被允许,而其他路径将会被拒绝访问。
阅读全文