Python迭代POST请求

2024-04-26 21:22:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试在一个循环中使用以下代码发出POST请求

description = fake.catch_phrase()
group_id = ''
invite_only = 1 if fake.boolean(chance_of_getting_true=50) == True else 0
is_public = 1 if fake.boolean(chance_of_getting_true=50) == True else 0
title = fake.company()

payload = {description,
       group_id,
       invite_only,
       is_public,
       title}
response = requests.post(createGroup, data=(payload), headers=headers)

我明白了 SequelizeValidationError: notNull Violation: v_title cannot be null在服务器上 但是,如果我尝试像这样发送相同的负载

payload = {'description': 'abc',
          'group_id': '1',
          'invite_only': '1',
          'is_public': '1',
          'title': 'someTitle'}

它工作得很好

因此,问题是我能在post调用中发送随机生成的数据吗? 如果我可以,那怎么可能呢


Tags: ofidonlyiftitleisgroupdescription
1条回答
网友
1楼 · 发布于 2024-04-26 21:22:27

data参数应该是字典、字符串或文件。然而,这是一个集合

payload = {description,
       group_id,
       invite_only,
       is_public,
       title}

因此,请传一本这样的字典:

payload = {'description': description,
      'group_id': group_id,
      'invite_only': invite_only,
      'is_public': is_public,
      'title': title}

初始化随机变量如下:

description = fake.catch_phrase()
group_id = ''
invite_only = int(fake.boolean(chance_of_getting_true=50))
is_public = int(fake.boolean(chance_of_getting_true=50))
title = fake.company()

(注意使用int()将布尔值转换为1或0)

相关问题 更多 >