当前位置: 首页 > news >正文

学习python调用WebApi的基本用法(2)

  使用requests库以post方式调用WebApi接口的方式类似于前文,但由于post方式通常由请求体传递json格式参数,其用于与get调用略有区别,主要注意点如下:
  1)如果是https开头的地址,如果网站证书已经过期,需要设置verify属性为False(post或者get函数都需要设置),否则会报下面的错误:

requests.exceptions.SSLError: HTTPSConnectionPool(host='localhost', port=44303): Max retries exceeded with url: /EasyCaching/GetToken (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate (_ssl.c:997)')))

  2)通过请求体传递json格式的参数,需要在调用post函数时设置data属性,且需调用json.dumps函数将字符串转换为json格式(需要安装并引入json库);
  3)如果需要设置请求头,则在调用post函数时设置headers属性。

  以之前编写的基于JWT的身份验证WebApi接口为例,首先调用GetToken函数获取JWT Token,然后将Token附在请求头中调用GetInfo函数,示例代码及运行结果如下所示:

import requests
import json url = 'https://localhost:44303/EasyCaching/GetToken'response = requests.get(url, verify=False)jwt_token=response.textdata={"UserName": "1","UserSex": "2","UserPassword": "3","IsKeyUser": True
}headers={'Authorization':'Bearer '+jwt_token,'Content-Type':'application/json'}url='https://localhost:44303/EasyCaching/GetInfo'result=requests.post(url,data=json.dumps(data),headers=headers, verify=False)result_json = result.json()
print('UserName:'+result_json['UserName'])

在这里插入图片描述

参考文献:
[1]https://api.vvhan.com/
[2]https://blog.csdn.net/weixin_41287260/article/details/146780908

http://www.xdnf.cn/news/1116829.html

相关文章:

  • k8s存储入门
  • 基于Leaflet调用天地图在线API的多层级地名检索实战
  • 深度学习16(对抗生成网络:GAN+自动编码器)
  • 跨网络连接不同机器上的虚拟机
  • UNet改进(22):融合CNN与Transformer的医学图像分割新架构
  • 15. JVM调优的参数设置
  • [Linux 入门] Linux 引导过程、系统管理与故障处理全解析
  • word设置多级标题
  • Cursor的使用
  • docker容器高级管理-dockerfile创建镜像
  • 树莓派5-ollama-linux-arm64.tgz 下载
  • OkHttp SSE 完整总结(最终版)
  • cuda编程笔记(7)--多GPU上的CUDA
  • 敦煌藻井配色:姜黄×钴蓝的东方色彩应用手册
  • CVE-2022-0609
  • 用信号量实现进程互斥,进程同步,进程前驱关系(操作系统os)
  • hercules zos 安裝 jdk 8
  • CTFSHOW pwn161 WP
  • 整流电路Multisim电路仿真实验汇总——硬件工程师笔记
  • 使用macvlan实现容器的跨主机通信
  • KL散度:信息差异的量化标尺 | 从概率分布对齐到模型优化的核心度量
  • C++高频知识点(十一)
  • ALB、NLB、CLB 负载均衡深度剖析
  • 开源工具DeepFilterNet:实时语音降噪
  • 更换docker工作目录
  • 06.计算两个日期之间的差值
  • lambdastream深入剖析
  • 【LeetCode100】--- 4.移动零【复习回顾】
  • mmap映射文件
  • 理解 Robots 协议:爬虫该遵守的“游戏规则”