脚本名称:
Name:微信支付 APIv3
脚本说明:
- 本脚本是基于 微信支付 APIv3 的 Postman请求前置脚本(Pre-Request Script)进行完善,补充了微信支付普通商户所有已知公开接口,每个接口请求预置了请求参数示例与请求成功返回的参数示例,帮助商户开发者、测试人员以及小白用户也可以快速上手。
- 仅修改原脚本变量为常用叫法,无其他修改部分:
merchantId->mchid
merchantSerialNo->merchant_serial_no
merchantPrivateKey->apiclient_key.pem
使用前提条件
- postman,建议注册一个账户,便于使用它各种功能,例如同步。
- 有一个微信支付商户号,支持微信支付直连普通商户、微信支付直连特约商户,不支持微信二级子商户。
- 商户 API 私钥与商户证书序列号:商户API私钥是在商家平台申请商户API证书时,会生成商户私钥,并保存在本地证书文件夹的文件 apiclient_key.pem 中,商户商户序列号可在商家平台->账户中心->API安全->管理API证书查询到。
快速开始
1、使用Fork 方式导入脚本
1.1、点击进入向导,如下图所示。
1.2:点击 Fork Collection 进入下一步,填入标签 Fork Label 并选择目的工作台 Workspace。一般情况下,导入个人工作台 My Workspace 即可。
- 如未登录账户,会跳转到账户登录页面,如无账户建议先去注册一个
1.3点击 Fork Collection 完成导入。在你指定的 workspace 中可以看到《微信支付 APIv3》了。
2、配置Environment
-
环境(Environment) 是一组变量 (Varibles) 的集合。 脚本从环境中读取变量,用来计算请求的签名。
-
你可以从《微信支付 APIv3》提供的 商户参数模版 中 fork 一个空环境到自己的工作台。
接下来,在你工作台的 Enviroments 中找到新建的环境,点击 Add a new varialbe 添加新的变量:
变量名 | 是否必填 | 描述 | 备注 |
---|---|---|---|
server_url | 必填 | 微信支付接口域名 | 固定值:https://api.mch.weixin.qq.com |
mchid | 必填 | 微信支付商户号 | 纯数字 |
merchant_serial_no | 必填 | 商户 API 证书序列号 | |
apiclient_key.pem | 必填 | PEM 格式的商户 API 私钥 | 以 -----BEGIN PRIVATE KEY----- 开始的 PEM 格式的商户 API 私钥。 |
appid | 必填 | 用于微信支付接口请求中的APPID | APPID需要与填写的mchid有绑定关系 |
openid | 选填 | 用于微信支付接口请求中的openid | 如不配置全局变量,请求时需要将参数中的变量openid替换为实际openid值 |
一组常见配置如下图所示:
3、发送测试请求
- 此处建议,使用桌面版 Postman app 发送请求,速度更快,体验更好!
现在回到工作台的请求构造界面,填入请求方法、URL、请求参数、Body 等参数。
工作台预置了微信支付普通商户所有请求样例供开发者参考,开发者也可以参考请求样例,构造自己的请求。
最后,选择你之前配置的 Environment,再点击地址栏右侧的Send按钮,发送请求。
常见问题
1、发送请求时遇到错误提示“Error: Too few bytes to parse DER.”或者“Too few bytes to read ASN.1 value.”
A:通常是环境 Environments 里配置的变量 merchantPrivateKey 填写有误导致的。脚本接收的私钥,以 -----BEGIN PRIVATEKEY----- 开始,以 -----END PRIVATE KEY----- 结束的一串字符串。
2、为什么我发送请求很慢?
A:如果你使用的网页版 Postman,请使用桌面版 Postman app。因为浏览器中跨域资源共享(CORS)的限制,网页版发送请求是由 Postman 后台中转的。
WeChatPay Developers QQ Group
ID:684379275
三连完毕!
QQ群密码是啥
密码就在谜面上
慕姨
三联完毕
厉害了我的琛哥!