如何使用flask验证URL并重定向到某些URL

nob*_*iru 1 python flask

我想先验证网址,然后再使用Flask对其进行重定向。

我的抽象代码在这里...

@app.before_request
def before():
   if request.before_url == "http://127.0.0.0:8000":
       return redirect("http://127.0.0.1:5000")
Run Code Online (Sandbox Code Playgroud)

你有什么主意吗?提前致谢。

bla*_*kev 5

使用urlparse(内置模块)。然后,使用内置烧瓶重定向方法

>>> from urlparse import urlparse
>>> o = urlparse('http://www.cwi.nl:80/%7Eguido/Python.html')
>>> o   
ParseResult(scheme='http', netloc='www.cwi.nl:80', path='/%7Eguido/Python.html',
        params='', query='', fragment='')
>>> o.scheme
'http'
>>> o.port
80
>>> o.geturl()
'http://www.cwi.nl:80/%7Eguido/Python.html'
Run Code Online (Sandbox Code Playgroud)

然后,您可以检查解析出的端口,并使用正确的端口或路径重建URL(使用相同的库)。这将保持URL的完整性,而不是处理字符串操作。