Python 如何使此API与有效负载一起工作?
我正在使用此API列出用户。我可以指定的参数之一是放置在数组中的团队id。当我尝试指定一个团队id时,当我将其放入有效负载时,它不起作用,但当我更改url以包含团队id时,它起作用Python 如何使此API与有效负载一起工作?,python,python-3.x,api,Python,Python 3.x,Api,我正在使用此API列出用户。我可以指定的参数之一是放置在数组中的团队id。当我尝试指定一个团队id时,当我将其放入有效负载时,它不起作用,但当我更改url以包含团队id时,它起作用 with open('config/config.json') as f: config = json.load(f) API_KEY = config['API_KEY'] TEAM_IDS = ['TEAMID'] def list_users(): url = 'https://api.p
with open('config/config.json') as f:
config = json.load(f)
API_KEY = config['API_KEY']
TEAM_IDS = ['TEAMID']
def list_users():
url = 'https://api.pagerduty.com/users'
headers = {
'Accept': 'application/vnd.pagerduty+json;version=2',
'Authorization': 'Token token={token}'.format(token=API_KEY)
}
payload = {
'team_ids[]': TEAM_IDS
}
r = requests.get(url, headers=headers)
result = []
if r.status_code == 200:
# loops for each user and retrieves their email
result = [user['email'] for user in r.json()['users']]
return result
else:
return None
这是API参考:
以下是我编写代码的依据:
这是我尝试在有效负载中指定团队id时的代码。由于某些原因,它不是这样工作的,但是当我将url更改为url='1'时,它就工作了https://api.pagerduty.com/users?team_ids%5B%5D=TEAMID&team_ids%5B%5D=“
在TEAMID中,我有一个实际的团队id
with open('config/config.json') as f:
config = json.load(f)
API_KEY = config['API_KEY']
TEAM_IDS = ['TEAMID']
def list_users():
url = 'https://api.pagerduty.com/users'
headers = {
'Accept': 'application/vnd.pagerduty+json;version=2',
'Authorization': 'Token token={token}'.format(token=API_KEY)
}
payload = {
'team_ids[]': TEAM_IDS
}
r = requests.get(url, headers=headers)
result = []
if r.status_code == 200:
# loops for each user and retrieves their email
result = [user['email'] for user in r.json()['users']]
return result
else:
return None
我想通过在数组中列出团队id并将其发送到有效负载中来完成这项工作,这样我就可以列出多个团队id,而不会在url中把它们都弄乱。看起来您只需要这样的东西
payload = {
'team_ids[]': TEAM_IDS
}
r = requests.get(url, headers=headers, params=payload)
谢谢。我不敢相信我错过了没问题,如果这有帮助,请随意投票/接受答案以结束问题