gpt4 book ai didi

python - Flask test_client 去除查询字符串参数

转载 作者:太空狗 更新时间:2023-10-29 17:56:13 27 4
gpt4 key购买 nike

我正在使用 Flask 创建几个非常简单的服务。从外部测试(使用 HTTPie)参数通过查询字符串获取服务。

但是如果我使用类似的东西。

    data = {
'param1': 'somevalue1',
'param2': 'somevalue2'}

response = self.client.get(url_for("api.my-service", **data))

我可以看到正在创建正确的 URI:

http://localhost:5000/api1.0/my-service?param1=somevalue1&param2=somevalue2

当我断点进入服务时:

request.args

实际上是空的。

self.client 是通过在我配置的 Flask 应用程序上调用 app.test_client() 创建的。

任何人都知道为什么 ? 之后的任何东西都被丢弃了,或者如何在仍然使用 test_client 的同时解决它?

最佳答案

我刚刚找到了解决方法。

制作

data = {
'param1': 'somevalue1',
'param2': 'somevalue2'}

response = self.client.get(url_for("api.my-service", **data))

进入这个:

data = {
'param1': 'somevalue1',
'param2': 'somevalue2'}

response = self.client.get(url_for("api.my-service"), query_string = data)

这行得通,但似乎有点不直观,调试时有一个地方丢弃了 URI 中提供的查询字符串....

但无论如何这暂时有效。

关于python - Flask test_client 去除查询字符串参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28054858/

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