【问题标题】:How can I change the body from a list in my code in a request.post while loop, changing the body in each loop如何在 request.post while 循环中从我的代码列表中更改正文,在每个循环中更改正文
【发布时间】:2020-05-17 09:08:28
【问题描述】:

这是我想要实现的目标: 在循环中向 API 端点发送 API POST 请求,并在每个循环中从 mylist 的 json 正文中发送一个不同的值,直到循环将我列表中的每个值一个一个地删除。

mylist = (1234, 5213, 4151)

my_numbers = json.dumps(mylist)

While True:

    upgrade_api = requests.post('http://api.com',headers={"content-type": "application/json", "Authorization": token},
    json=[{my_numbers}]

基本上,我希望 json 请求中的主体在我的列表中的每个循环中进行更改。我的编码很烂,但它可以满足我的需要。

谢谢!

【问题讨论】:

  • 不要做json=[{"numbers":my_numbers()]不要调用与lib相同的变量,当你使用这个lib时更多^^另外请解释得更好,为你中的每个值调用请求mylist ?这个不清楚
  • @azro 那是我的错误。这个api post请求使用json REST api更改参数,我想为每个使用相同api请求并希望运行脚本的多个节点更改参数,直到我列表中的所有“节点”一一收到请求.
  • 不明白。请编辑您的帖子(不发表评论)并解释步骤,并回答:您要对mylist 的每个值执行请求并在请求中传递值吗?
  • 我尽力解释。希望现在有意义。

标签: python json loops post request


【解决方案1】:

由于您想单独发送它们,为什么要尝试发送整个列表?


您可以这样做,您可能需要为 JSON 部分中的数字指定 key

mylist = (1234, 5213, 4151)
headers = {"content-type": "application/json", "Authorization": token}
for value in mylist:
    upgrade_api = requests.post('http://api.com', headers=headers, json={"number": value}
    time.sleep(3)

【讨论】:

  • 谢谢你的工作!如果您不介意,我如何将每个请求之间的等待时间设置为 3 秒?
  • @dkohn1337 你可以自己看。 time.sleep(3)如果你不努力,你永远不会进步;)
  • 我很感激。大约一个月前我开始使用 python,现在还在学习。
  • @dkohn1337 你现在可以考虑接受答案了;)
猜你喜欢
  • 1970-01-01
  • 2013-10-18
  • 1970-01-01
  • 2014-04-05
  • 1970-01-01
  • 2015-02-16
  • 1970-01-01
  • 1970-01-01
  • 2016-11-02
相关资源
最近更新 更多