使用Python向REST API提交请求

提姆

由于某种原因,我的put请求无法正常工作,并且出现语法错误。我是Python的新手,但我的GET和POST请求正在运行。有人认为这个要求和建议有什么问题吗?我正在尝试将描述更改为“更改的描述”

#import requests library for making REST calls
import requests
import json

#specify url
url = 'my URL'

token = "my token"

data = {
        "agentName": "myAgentName",
        "agentId": "20",
        "description": "Changed Description",
        "platform": "Windows"
        }

headers = {'Authorization': 'Bearer ' + token, "Content-Type": "application/json", data:data}

#Call REST API
response = requests.put(url, data=data, headers=headers)

#Print Response
print(response.text)

这是我遇到的错误。

Traceback (most recent call last):
  line 17, in <module>
    headers = {'Authorization': 'Bearer ' + token, "Content-Type": "application/json", data:data}
TypeError: unhashable type: 'dict'
穆罕默德·塔希尔

由于=登录headers字典而导致语法错误

headers = {'Authorization': 'Bearer ' + token, "Content-Type": "application/json", data=data}

它应该是:

headers = {'Authorization': 'Bearer ' + token, "Content-Type": "application/json", 'data':data}

看到data=data被更改'data':data冒号和单引号。

并且确定要在标头中发送数据吗?还是应该请求中替换payloaddataput

编辑:

由于您已经编辑了问题,现在您将数据作为PUT请求的主体发送requests.put(data=data),因此在标头中不再需要它。只需将标题更改为:

headers = {'Authorization': 'Bearer ' + token, "Content-Type": "application/json"}

但是,因为您已将Content-Type标头设置为,application/json所以我认为在您的PUT请求中您应该

response = requests.put(url, data=json.dumps(data), headers=headers)

将您的数据作为json发送。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用python向RESTful API发出请求

如何使用 angular 向 REST api 发送删除请求

Python-如何使用请求向API发出PATCH请求

使用GitHub API确定对master的最后一次提交是否是合并请求请求的结果?

如何使用FileUpload向Azure AD受保护的REST API进行REST API发布请求

如何在Xero Webhook内部向Xero API提交发布请求

通过 NODE JS & express & jquery 向任何 API 提交请求后,在 HTML 中打印 var 值

使用 Python 向 mailchimp API 发送 POST 请求

Activiti Rest API:提交用户任务时捕获所有请求

“响应已提交,无法处理异常”错误当两次发送相同的 Rest API 请求时

向Google Contacts REST API发出HTTP GET请求时如何使用API密钥

使用PayPal REST API向成员收费

如何使用 PHP 通过 cURL 向 REST API 发送 HTTP GET 请求,并使用 cURL 从 REST API 调用方法

是否存在用于将批处理获取请求提交到AWS DynamoDB的Python API?

使用Apache Spark隐藏的REST API提交python脚本

如何使用python发送rest API(Google Vision的API)请求?

Python请求+ Marketo REST API

Volley,ngrok-无法使用Volley向ngrok REST API发出发布请求

使用 POSTMAN 向 Java REST API 发送 POST 请求并在 xml 响应中获取空值

使用请求包提交表单

使用python请求提交搜索表单

如何向表单提交邮寄请求?

向API :: V1模块控制器提交请求时,无法验证Rails authenticity_token

使用 localhost 向 API 发送 POST 请求

使用 Alamofire 向 API 发送 POST 请求

使用python中的请求遍历分页的REST API

使用 Python 请求将数据发布到 REST API

向API重复请求

我如何使用 Python 请求库提交 https 发布请求