Python中POST调用Restful接口示例

作者:黑伴白 时间:2021-03-14 19:42:19 

Python之POST调用Restful接口示例

# -*- coding: utf-8 -*-
import json
import re
import requests
from requests.auth import HTTPBasicAuth

# web登录用户
userName="admin"
# web登录密码
passWord="admin"
# 删除任务节点接口URL
# 删除任务节点 将任务从计划流程中删除 任务静态信息不会删除 任务节点产生的事件会同步删除 任务节点后依赖将不会再依赖此任务节点产生的事件
delTaskNodeURL="http://199.188.166.110:8080/MoiaControl/rest/RestService/delTaskNode"
# 用列表存储要删除的任务节点清单
taskNodesList=['a','b','c']

# 定义接口调用函数 通过post调用restful接口
# 采用HTTPBasicAuth一种简单的身份认证,它是通过http的authorization请求头中,携带经过base64加密的用户名和密码而实现的一种认证
def request_post(url, param, user, pwd):
   try:
       headers = {'charset': 'utf-8'}
       result = requests.post(url, data=param, auth=HTTPBasicAuth(user,pwd))
       # print("STATUS_CODE:{0}".format(result.status_code))
       # print("REASON:{0}".format(result.reason))
       # print("CONTENT:{0}".format(result.content.decode()))
       text=result.content.decode()
       return text
   except Exception as e:
       print(e)

# 根据任务节点列表清单 循环删除任务节点
for item in taskNodesList:
   # 获取任务节点名称 组成节点删除接口参数
   taskNodes={"taskNodes":"['%s']" % item}
   # 开始进行任务节点删除
   resInfo = request_post(delTaskNodeURL, taskNodes, userName, passWord)
   # 判断任务节点删除是否成功
   if not re.search(r"删除任务节点成功", resInfo):
       # 将任务删除结果的字符串转为字典格式 并获取删除结果描述信息
       reason=json.loads(resInfo)["describe"]
       # 打印删除结果
       print("刪除任务节点[%s]失败: %s" % (item, reason))
   else:
       # 将任务删除结果的字符串转为字典格式 并获取删除结果描述信息
       reason = json.loads(resInfo)["describe"]
       # 打印删除结果
       print("刪除任务节点[%s]成功: %s" % (item, reason))

补充:python用post访问restful服务接口

import requests
import json
data={"ids": ["00007190","00007191"]}

url="http://XXXXX"
data_json = json.dumps(data)
headers = {'Content-type': 'application/json'}
response = requests.post(url, data=data_json, headers=headers)
print(response.text)

来源:https://blog.csdn.net/weixin_49192027/article/details/122282007

标签:python,restful,接口
0
投稿

猜你喜欢

  • Django MTV和MVC的区别详解

    2023-06-08 10:15:19
  • jsp+servlet简单实现上传文件功能(保存目录改进)

    2023-07-20 17:57:07
  • 垂直栅格与渐进式行距(上)

    2009-04-01 18:30:00
  • Python数据可视化实现多种图例代码详解

    2022-02-11 04:01:38
  • 使用python实现时间序列白噪声检验方式

    2023-11-13 23:06:53
  • python爬虫容易学吗

    2023-08-24 09:48:26
  • python算法题 链表反转详解

    2021-01-26 11:47:35
  • Django-Rest-Framework 权限管理源码浅析(小结)

    2021-11-02 06:18:49
  • 解决Python报错:SyntaxError: invalid character ‘,‘ (U+FF0C)

    2023-01-24 06:12:57
  • TensorFlow实现模型断点训练,checkpoint模型载入方式

    2022-01-19 22:32:12
  • python鼠标绘图附代码

    2021-09-09 17:10:26
  • php 进阶:实现无限分类第1/4页

    2023-11-17 21:04:55
  • Python找出微信上删除你好友的人脚本写法

    2023-11-09 15:55:58
  • Python基础之类的定义和使用详解

    2023-03-10 08:23:34
  • pygame游戏之旅 计算游戏中躲过的障碍数量

    2022-02-13 19:09:16
  • PHP addslashes()函数讲解

    2023-06-04 04:28:24
  • 微信小程序request请求后台接口php的实例详解

    2023-11-11 14:24:04
  • python+PyQT实现系统桌面时钟

    2023-07-21 07:46:33
  • HTML头部属性全接触

    2007-09-05 19:09:00
  • linecache模块加载和缓存文件内容详解

    2022-09-23 20:00:45
  • asp之家 网络编程 m.aspxhome.com