python - 如何在 Python 中使用多个对象发布请求
问题描述
我可以将 post 方法与除此之外的任何 url 一起使用,当我使用邮递员发送相同的请求(相同的正文、密钥等)时,请求工作得非常好!但是当我使用 python 时(带有请求库)它根本行不通,我使用了以下代码:
import requests
import json
url = "https://app.funildevendas.com.br/api/opportunity?&IntegrationKey=(cant give it up, but it's defintely right)"
payload = {
"oportunidades": [
{
"titulo": "TestePython",
"valor": 10440,
"codigo_vendedor": 38171,
"codigo_metodologia": 1,
"codigo_etapa": 2,
"codigo_canal_venda":69400,
"empresa": {
"nome": "Python",
"cnpj": "",
"ie": "",
"segmento": "",
"endereco_completo": {
"logradouro": "",
"numero": "",
"complemento": "",
"bairro": "",
"cidade": "",
"uf": "",
"cep": ""
}
},
"contato": {
"nome": "Nome do contato",
"email": "email@contato.com.br",
"telefone1": "",
"telefone2": "",
"cargo": "",
"cpf": ""
}
}
]
}
res = requests.post(url,data=json.dumps(payload))
我确实得到了响应 [200],但它似乎无法识别身体结构。我得到的回应是:
{"response":"failure","message":"Cannot perform runtime binding on a null reference","value":null}
我想知道这是否是因为“oportunidades”之前的“[”但将其更改为“{”会导致语法错误。我的集成密钥绝对正确,我的身体(有效负载)也是如此,因为两者都可以使用邮递员正常工作
解决方案
尝试更改data=json.dumps(payload)
为json=payload
import requests
import json
url = "https://app.funildevendas.com.br/api/opportunity?&IntegrationKey=(cant give it up, but it's defintely right)"
payload = {
"oportunidades": [
{
"titulo": "TestePython",
"valor": 10440,
"codigo_vendedor": 38171,
"codigo_metodologia": 1,
"codigo_etapa": 2,
"codigo_canal_venda":69400,
"empresa": {
"nome": "Python",
"cnpj": "",
"ie": "",
"segmento": "",
"endereco_completo": {
"logradouro": "",
"numero": "",
"complemento": "",
"bairro": "",
"cidade": "",
"uf": "",
"cep": ""
}
},
"contato": {
"nome": "Nome do contato",
"email": "email@contato.com.br",
"telefone1": "",
"telefone2": "",
"cargo": "",
"cpf": ""
}
}
]
}
res = requests.post(url,json=payload)
推荐阅读
- http-post - 对 Teams MessageCard 上的“HTTPPost”操作进行身份验证以通过 Azure 应用代理调用 API
- python - 如果它们具有一定百分比的 NaN 值,则返回列(Python)
- c++ - 如何在 C++ 中使用 Goertzel 库和 FastLED 制作 Arduino LED 音频可视化器
- php - 曾经有效的 PHP-FPM 解决方案现在为所有子页面返回 404,索引页面仍然有效
- reactjs - React + Material-UI:列表应该有一个唯一的“关键”道具
- javascript - nodejs中两个数组之间的项目搜索
- c# - 如何按时间间隔有选择地接收 Azure 服务总线消息?
- java - NetBeans 中与 Maven 的跨项目依赖关系
- c++ - 有关矩阵的代码错误导致分段错误(核心转储)
- ng-bootstrap - 当使用 enter 键打开新的 NgbDropdowns 时,如何关闭先前打开的 NgbDropdowns?