您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何使用Python请求库发出发布请求?

如何使用Python请求库发出发布请求?

您的邮递员请求是JSON正文。只需在Python中复制相同的主体即可。您的Python代码没有发送JSON,也没有发送与Postman示例相同的数据。

对于初学者,通过data参数发送字典会将字典编码为application/x-www-form- urlencoded表单,而不是JSON。其次,您似乎正在发送单个过滤器。

以下代码完全复制了您的Postman帖子:

import requests

filters = {"filter": {
    "filters": [{
        "field": "RCA_Assigned_Date",
        "operator": "gte",
        "value": "2017-05-31 00:00:00"
    }, {
        "field": "RCA_Assigned_Date",
        "operator": "lte",
        "value": "2017-06-04 00:00:00"
    }, {
        "field": "T_Subcategory",
        "operator": "neq",
        "value": "Temporary Degradation"
    }, {
        "field": "Issue_Status",
        "operator": "neq",
        "value": "Queued"
    }],
    "logic": "and"
}}

url = "http://10.61.202.98:8081/T/a/api/rows/cat/ect/tickets"
response = requests.post(url, json=filters)

请注意,这里filters一个 Python 数据结构,并将其传递给json关键字参数。使用后者有两件事:

requests否则 只是一个HTTP API ,它不能使Cassandra做到比其他任何HTTP库更多的功能。该urllib.request.urlopen代码发送GET请求,并通过以下内容平凡地翻译为requests

def get_json():
    url = "http://10.61.202.98:8081/T/a/api/rows/cat/ect/tickets"
    response = requests.get(url, params={'user_name': user}, timeout=15)    
    return response.json()

删除if分支,并使用params参数将其替换,该参数将键-值对的字典转换为正确编码的URL查询(将用户名作为user_name键传递)。

注意json()响应中的呼叫;这负责解码从服务器返回的JSON数据。这仍然需要很长时间,您在这里没有过多地过滤Cassandra数据。

python 2022/1/1 18:35:44 有239人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶