4. 环境准备:Postman安装、Python requests库安装、测试沙箱环境配置
在开始接口调用实战之前,必须完成本地开发与调试环境的搭建。本章将指导你完成三部分核心环境的配置:Postman(可视化接口调试工具)、Python requests 库(自动化脚本依赖)以及测试沙箱环境(安全演练场)。
4.1 环境总览与依赖关系
下图展示了三个环境组件在接口调用流程中的位置与协作关系:
4.2 Postman 安装与基础配置
Postman 是业界最流行的 API 客户端,支持 REST、SOAP、GraphQL 等多种协议。本课程使用 Postman 进行接口的手动调试与请求构造验证。
4.2.1 下载与安装
- 官方下载地址:
https://www.postman.com/downloads/ - 支持平台:Windows(64位/32位)、macOS(Intel/Apple Silicon)、Linux(.deb/.rpm)
- 安装方式:下载对应安装包后,按默认向导完成安装。无需额外配置环境变量。
4.2.2 首次启动配置清单
| 步骤 | 操作 | 说明 |
|---|---|---|
| 1 | 注册/登录 Postman 账号 | 可选,但建议登录以同步集合与环境变量 |
| 2 | 创建工作空间(Workspace) | 选择「个人」或「团队」,本课程使用个人工作空间 |
| 3 | 导入课程预置集合 | 从课程附件导入 变更索赔发票接口集合.json |
| 4 | 设置环境变量 | 创建 沙箱环境,配置 base_url、 等变量 |
| 5 | 关闭 SSL 验证(沙箱专用) | Settings → General → SSL certificate verification → OFF |
💡 提示:Postman 的环境变量功能可以让你在沙箱、预发、生产环境之间一键切换,避免手动修改 URL 和鉴权参数。建议在课程开始前就建立好环境变量模板。
4.3 Python requests 库安装
Python 的 requests 库是自动化接口调用的首选工具。本课程使用 Python 3.8+ 版本,通过 pip 包管理器安装。
4.3.1 安装命令
# 检查 Python 版本
python --version
# 安装 requests 库(推荐使用国内镜像加速)
pip install requests -i https://pypi.tuna.tsinghua.edu.cn/simple
# 验证安装
python -c "import requests; print(requests.__version__)"
4.3.2 推荐安装的辅助库
| 库名 | 用途 | 安装命令 |
|---|---|---|
pandas | 发票数据批量处理与比对 | pip install pandas |
json | Python 内置,无需安装 | — |
openpyxl | Excel 格式发票清单读写 | pip install openpyxl |
python-dotenv | 管理沙箱密钥等敏感变量 | pip install python-dotenv |
⚠️ 注意:如果同时安装了 Python 2 和 Python 3,请使用
pip3 命令代替 pip,确保 requests 库安装到 Python 3 环境中。建议在虚拟环境(venv)中操作,避免依赖冲突。
4.4 测试沙箱环境配置
测试沙箱是模拟生产环境的隔离演练场,所有接口调用均使用虚拟数据,不会影响真实业务。本课程沙箱环境由企业财务中台提供,配置步骤如下:
4.4.1 获取沙箱接入信息
联系课程支持或企业 IT 部门获取以下信息:
- 沙箱基础 URL:例如
https://sandbox-api.example.com - 沙箱 AppKey 与 AppSecret:用于接口鉴权
- 沙箱测试账号:包含供应商账号、采购方账号各一个
- 沙箱数据范围:仅包含 2024 年 1 月~6 月的模拟变更索赔与发票数据
4.4.2 沙箱环境变量配置模板
在 Postman 中创建环境变量,或在 Python 项目根目录创建 .env 文件:
# .env 文件内容(请勿提交到版本控制)
SANDBOX_BASE_URL=https://sandbox-api.example.com
SANDBOX_APP_KEY=your_app_key_here
SANDBOX_APP_SECRET=your_app_secret_here
SANDBOX_SUPPLIER_ACCOUNT=test_supplier_01
SANDBOX_BUYER_ACCOUNT=test_buyer_01
4.4.3 沙箱连通性验证
配置完成后,使用以下 Python 脚本验证沙箱是否可用:
import requests
import os
from dotenv import load_dotenv
load_dotenv()
base_url = os.getenv("SANDBOX_BASE_URL")
app_key = os.getenv("SANDBOX_APP_KEY")
app_secret = os.getenv("SANDBOX_APP_SECRET")
# 构造鉴权头
headers = {
"X-App-Key": app_key,
"X-App-Secret": app_secret,
"Content-Type": "application/json"
}
# 调用沙箱健康检查接口
try:
resp = requests.get(f"{base_url}/health", headers=headers, timeout=10)
if resp.status_code == 200:
print("✅ 沙箱连接成功!返回数据:", resp.json())
else:
print(f"❌ 沙箱返回异常状态码:{resp.status_code}")
except requests.exceptions.RequestException as e:
print(f"❌ 沙箱连接失败:{e}")
📌 关键检查点:如果沙箱连接失败,请依次排查:① 网络是否能访问沙箱域名(ping 测试);② AppKey/AppSecret 是否正确;③ 沙箱服务是否处于维护期;④ 是否需要在请求中添加代理配置。
4.5 环境配置检查清单
在进入下一节实战之前,请逐项确认以下环境就绪状态:
| 序号 | 检查项 | 预期状态 | 确认 |
|---|---|---|---|
| 1 | Postman 已安装并启动 | 可正常打开界面 | ☐ |
| 2 | Postman 沙箱环境变量已创建 | 包含 base_url、 等 | ☐ |
| 3 | Python 3.8+ 已安装 | python --version 输出 ≥3.8 | ☐ |
| 4 | requests 库已安装 | pip show requests 显示版本号 | ☐ |
| 5 | 沙箱健康检查通过 | 返回 HTTP 200 及正常 JSON | ☐ |
| 6 | 课程预置集合已导入 Postman | 左侧 Collections 可见课程文件夹 | ☐ |