gpt4 book ai didi

python - 无法将有效的 CURL PUT 语句转换为有效的 python 脚本

转载 作者:太空宇宙 更新时间:2023-11-03 15:52:23 26 4
gpt4 key购买 nike

这是我尝试将其放入 python 脚本中的工作curl 语句:

curl -L -H 'X-Cisco-Meraki-API-Key: <key>' -X PUT -H'Content-Type: application/json' --data-binary '{"name":"new SSID name", "enabled":true, "authMode":"psk", "encryptionMode":"wpa", "psk":"abcd1234", "ipAssignmentMode":"Bridge mode"}' 'https://dashboard.meraki.com/api/v0/networks/[networkId]/ssids/[number]'

这是我的Python代码。

import requests
import json

url = "https://dashboard.meraki.com/api/v0/networks/XXXXXXX/ssids/2"
headers = {'X-Cisco-Meraki-API-Key': 'YYYYYYY', 'content-type': 'application/json'}
payload = {"name":"test", "enabled":"true", "authMode":"psk", "encryptionMode":"wpa", "psk":"abcd1234", "ipAssignmentMode":"NAT mode"}

r = requests.put(url, headers=headers, data=payload, allow_redirects=True)

print r.status_code

当我运行curl命令时,它可以工作,但是当我尝试python脚本时,我收到400错误消息。我的猜测是,这与应用程序解释有效负载的方式有关。任何帮助将不胜感激。

最佳答案

您需要使用:

data=json.dumps(payload)

而不是:

data=payload

当您添加 'content-type': 'application/json' header 时,您意味着您正在发送 json 数据,这就是您需要使用json.dumps() 发送有效的 json 数据而不是 Python 字典/对象

关于python - 无法将有效的 CURL PUT 语句转换为有效的 python 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41168422/

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