gpt4 book ai didi

python - 如何在 Pyramid 中全局重定向 IP 地址?

转载 作者:行者123 更新时间:2023-11-30 23:34:27 25 4
gpt4 key购买 nike

是否有一种全局方法可以通过 Pyramid 中的某些 IP 来重定向用户?现在,我们必须逐个 View 地重定向。

例如,对于 IP 地址为“xyx.xxx.xx”的人访问的每个页面,每个 View 都会返回“我的自定义消息”。如果您没有该 IP 地址,则页面将正常加载。

@view_config(renderer="json", route_name="myview")
def myview(request):
redirector(request)
......
def redirector(request):
if request.remote_addr.startswith('66.'): return viewA(request)
else: return 'my custom message'

有没有一种方法可以在 Pyramid 中进行全局重定向(除了通过 .htaccess)?

谢谢!

最佳答案

您可以使用 Pyramid's events system :

@subscriber('pyramid.events.NewRequest')
def newrequest(event):
request = event.request
if request.remote_addr.startswith('66.'):
raise SomeException('my custom message')

@view_config(context=SomeException, renderer='string')
def exc_view(exc, request):
return exc.message

关于python - 如何在 Pyramid 中全局重定向 IP 地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18137995/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com