Python 3.x Python请求库

Python 3.x Python请求库,python-3.x,Python 3.x,我正在尝试使用requests libaray将请求发布到API data = '{"DoorId": 6612642, "RelayFunction": {"RelayId": "Relay1", "RelayAction": "TimedOpen", "RelayOpenTime": 7000}, "LedFlash": 3}' r = requests.post(url = Paxton_open_door, headers = {'Content-Type': 'application

我正在尝试使用requests libaray将请求发布到API

data = '{"DoorId": 6612642, "RelayFunction": {"RelayId": "Relay1", "RelayAction": "TimedOpen", "RelayOpenTime": 7000}, "LedFlash": 3}'

r = requests.post(url = Paxton_open_door, headers = {'Content-Type': 'application/json',
    'Accept': 'application/json','Authorization':'Bearer ' + token}, data = data)

除了值(6612642,Relay1,TimedOpen,7000和3),我想使用变量,但我不能让它工作


希望有人能帮我吗?

这是一项非常简单的任务

首先,您可以定义变量:

door_id = 48848 # some value you may want to set
relay_id = "custom relay id"
relay_open_time = 10020 # your custom time
然后,您可以在POST查询中提供的
数据
字典中使用它们:

data = '{"DoorId": door_id, "RelayFunction": {"RelayId": relay_id, "RelayAction": "TimedOpen", "RelayOpenTime": relay_open_time}, "LedFlash": 3}'

r = requests.post(url = Paxton_open_door, headers = {'Content-Type': 'application/json',
    'Accept': 'application/json','Authorization':'Bearer ' + token}, data = data)
欢迎来到S0

希望这有帮助

您可以使用这样的变量

import json

door_id = 48848
relay_id = "relay id"
relay_open_time = 10020

# below is a dict
data = { "DoorId": door_id,
         "RelayFunction":{
                   "RelayId": relay_id,
                   "RelayAction": "TimedOpen",
                   "RelayOpenTime": relay_open_time},
         "LedFlash": 3}

# convert this dict to string for the post request
data = json.loads(data)


# your post request
r = requests.post(
         url=Paxton_open_door,
         headers={'Content-Type': 'application/json',
    'Accept': 'application/json','Authorization':'Bearer ' + token},
         data=data)

要了解更多关于
JSON
module-

的信息,我需要使用JSON.dump进行转换,现在我可以使用了-非常感谢:)