Route Flask : space 的问题和带有变量的路由中的重音
Route Flask : Problem of space and accent in a route with variable
我用 Flask 创建了一个应用程序。
在本地,一切正常。
但是现在我已经发送到服务器,我遇到了路由问题。
导致问题的url是这样构建的:
@app.route('/analyze/<string:keyword>')
问题是关键字变量可以包含 accents (éèàç, etc ...) and spaces (example : 溶胶层)
问题是我有 sol%20stratifi%c3%a9 而不是复合地板,它出现在屏幕上,而且在我调用数据库时也会出现。
我试过了:
- 在关键字变量上编码和解码 utf-8:它不起作用
- 导入编解码器:它不起作用
- 测试使用功能:Flask URL route encoding problems
- 尝试在url路由中直接添加.encode('utf-8')
你有解决办法吗?
sol%20stratifi%c3%a9
是一个 percent-encoded 字符串(URL 引用 或 %xx
转义 Python 术语)。
urllib.parse
module defines functions that fall into two broad categories: URL parsing and URL quoting.
from urllib.parse import unquote
print( unquote( 'sol%20stratifi%c3%a9'))
sol stratifié
我用 Flask 创建了一个应用程序。
在本地,一切正常。
但是现在我已经发送到服务器,我遇到了路由问题。
导致问题的url是这样构建的:
@app.route('/analyze/<string:keyword>')
问题是关键字变量可以包含 accents (éèàç, etc ...) and spaces (example : 溶胶层)
问题是我有 sol%20stratifi%c3%a9 而不是复合地板,它出现在屏幕上,而且在我调用数据库时也会出现。
我试过了:
- 在关键字变量上编码和解码 utf-8:它不起作用
- 导入编解码器:它不起作用
- 测试使用功能:Flask URL route encoding problems
- 尝试在url路由中直接添加.encode('utf-8')
你有解决办法吗?
sol%20stratifi%c3%a9
是一个 percent-encoded 字符串(URL 引用 或 %xx
转义 Python 术语)。
urllib.parse
module defines functions that fall into two broad categories: URL parsing and URL quoting.
from urllib.parse import unquote
print( unquote( 'sol%20stratifi%c3%a9'))
sol stratifié