gpt4 book ai didi

python - 路由请求字符串中的多个变量

转载 作者:太空宇宙 更新时间:2023-11-04 09:02:01 25 4
gpt4 key购买 nike

我很难理解如何从 Flask 中的请求字符串中获取变量。我很确定这种语法是错误的,但有人可以帮助我了解如何从请求字符串中获取多个变量吗?

@restServer.route('/end_point/<foo>&<bar>')
def like_provider(self,foo,bar):

发送数据时应该使用哪种语法?

http://url/foo&bar

http://url/var=foo&var2=bar

第二种情况,Flask中的路由代码怎么写?

最佳答案

您的 View 需要关注 URL 的两个部分:URL 路径和查询字符串。您的两个示例都是只是路径元素,实际上,查询字符串就是? 之后的所有内容。

这实际上取决于您的 Web 应用程序应该如何与之交互;一个 URL 通常代表一个资源,而查询字符串则代表对该资源的查询。

/users/102324/users?name=Joe+Soap 进行比较;前者代表一个用户(ID为102323,后者代表所有用户,但包括对与给定名称匹配的用户的搜索.

路径 是您与路由配置匹配的部分;它完全符合您的模式;对于您的两个示例,foobar 占位符捕获所有内容(/ 字符除外);所以你的两个 URL 都可以工作,并且只是导致 foobar 的不同值:

http://url/end_point/foo&bar  -> {'foo': 'foo', 'bar': 'bar'}
http://url/end_point/var=foo&var2=bar -> {'foo': 'var=foo', 'bar': 'var2=bar'}

但您通常不会在 URL 路径中使用 &

另一方面,查询字符串被解析为键值对,可以使用 request.query object 访问。 :

@route('/end_point')
def like_provider(self):
foo = request.args.get('foo')
bar = request.args.get('bar')

关于python - 路由请求字符串中的多个变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24333681/

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