Ben*_*Ben 3 python url flask web
我正在使用Flask开发迷你API后端,我有以下URL:
@app.route('/v1.0/post/check/<path:url>')
def check(url):
print url
//do some works
Run Code Online (Sandbox Code Playgroud)
API调用示例如下所示:
/v1.0/post/check/http://exampleside.com/enter1/index.php?app=forum&act=threadview&tid=14066185
我期望得到的是'http://exampleside.com/enter1/index.php?app=forum&act=threadview&tid=14066185'
在代码中获取并打印URL字符串,但是实际上,我真正得到的只是'http://exampleside.com/enter1/index.php'
似乎Flask认为“?” 和'&'作为特殊字符,然后自动拆分URL。那么,为了在Flask中获得整个URL,我应该怎么做?
您正在尝试传递一个URL,包括URL上的请求参数。
您有两种选择。
明智的做法是在构造URL的那部分时使用urlencode。那将安全地编码?和&符号。
这是一个示例,因此您可以判断是否如此。这个:
Foo?g=one&two=2
Run Code Online (Sandbox Code Playgroud)
看起来像这样:
Foo%3Fg%3Done%26two%3D2
Run Code Online (Sandbox Code Playgroud)
这将是您api的uri的最后一部分。
第二个是从烧瓶拆分的所有参数中重建值。但这令我感到震惊,因为它需要做很多工作。
归档时间: |
|
查看次数: |
1974 次 |
最近记录: |