从入门到精通:Postman调试微信支付接口的绝佳方法

news2024/10/1 1:20:38

前期准备

在使用 Postman 调试微信支付接口之前,你需要做好以下准备:

  • 安装 Postman 客户端应用,或使用网页版;
  • 成为 微信支付商户;
  • 已申请 商户API私钥。

当你已经具备这三个条件,就可以进入微信支付接口调试之旅了~

脚本导入

方式一:通过 fork 方式

为了帮助商户开发者快速上手,微信官方将 调试微信支付接口的脚本 部署到了 Postman 云工作台 WeChat Pay Public Workspace。

在该工作台中,你只需要将名为 WeChatPay APIv3 的集合 fork 到自己的工作台,然后就可以在 Postman 上构造并发送微信支付 APIv3 请求。

具体操作如下图所示:

注: 需要确保你已经登录了 Postman 平台。

1、进入到 WeChat Pay Public Workspace 后选择 Create a fork ,进入到下一步。

2、填入标签 Fork Label 并选择目的工作台 Workspace。一般情况下,导入个人工作台 My Workspace 即可,也可以选择导入其它工作台。点击 Fork Collection 完成导入,在你指定的 Workspace 中即可看到WeChatPay APIv3

3、WeChatPay APIv3 参考如下:

方式二:从本地导入

Note 不推荐本地导入脚本,不但麻烦而且容易出错,还不能同步上游的变更。

1、如果你有从本地导入的需求,首先,打开 WeChatPay APIv3 集合,展开选项后点击 Export

2、下载并保存 WeChatPay APIv3.postman_collection.json 文件至本地。然后,有两种方式本地导入 JSON 文件:

  • Postman 界面左上角的 Import 按钮
  • 菜单 File > Import 发起导入

选择本地的 WeChatPay APIv3.postman_collection.json,点击确认后,导入便完成了,操作如下图所示:

你会发现在工作台的 Collections 里新增了名为 WeChatPay APIv3 的一组请求。

配置 Environment

环境(Environment) 是一组变量 (Varibles) 的集合,脚本从环境中读取变量,用来计算请求的签名。

你可以从云工作台 WeChat Pay Public Workspace 中的 商户参数模版 中 fork 一个空环境到自己的工作台。

接下来,在你工作台的 Enviroments 中找到新建的环境,点击 Add a new varialbe 添加新的变量:

  • mchid:必填,商户号;
  • merchant_serial_no:必填,商户 API 证书序列号;
  • apiclient_key.pem:必填,PEM 格式的商户 API 私钥;

Warning 为了安全,请仔细阅读安全注意事项。

一组常见配置如下图所示:

参数变量:

变量名是否必填描述备注
mchid商户号
merchant_serial_no商户 API 证书的证书序列号
apiclient_key.pemPEM 格式的商户 API 私钥
openid用户的 OpenID,测试请求中的 {{openid}}
appid公众账号或者小程序的 AppID
shangmi值为 true 时使用商密签名默认值为空,即使用 RSA 签名
pubkey.pem国密签名时必填PEM 格式的商户 API 公钥如果私钥 PEM 中包含公钥,该变量可不填
server_url服务器地址默认设置为 https://api.mch.weixin.qq.com

发送请求

现在回到工作台,进入WeChatPay APIv3集合,选择你要发送的请求。

然后,填入请求参数,按照注释修改 Body 中的参数。

最后,选择你之前配置的 Environment,再点击地址栏右侧的Send按钮,发送请求吧。

安全注意事项

商户 API 私钥是非常敏感的信息。使用此代码时,应记住以下几点:

  • 将配置了私钥的工作台(workspace)的可见性(Visibility)设置为私有 Personal 或者 Private不要设置为公开 Public
  • 私钥的变量类型设置为 secret。变量值会以掩码的形式显示在屏幕上。
  • 私钥的变量值设置在 Current ValueCurrent Value 仅保存在本地 Session,不会被发送至 Postman 的服务器。
  • 如果使用来自其他人的 Postman 脚本,请检查依赖库、变量和脚本,确保没有被修改,避免被植入不安全代码。

Note 有关 Postman 的安全机制,请参考 Postman Security

常见问题

发送请求时遇到错误提示“Error: Too few bytes to parse DER.”或者“Too few bytes to read ASN.1 value.”

通常是环境 Environments 里配置的变量 merchantPrivateKey 填写有误导致的。脚本接收的私钥,以 -----BEGIN PRIVATEKEY----- 开始,以 -----END PRIVATE KEY----- 结束的一串字符串。

为什么我发送请求很慢?

如果你使用的网页版 Postman,请使用桌面版 Postman app。因为浏览器中跨域资源共享(CORS)的限制,网页版发送请求是由 Postman 后台中转的。

使用中文软件更便捷去调试

如果你的英语比较一般,想要使用中文版本的接口去调试,可以看看:如何使用 Apifox 调试微信支付接口

知识扩展:

  • Postman 传递 Date 类型参数
  • 如何在 Postman 中进行 HTTPS 请求

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/836878.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C语言学习】整数范围、整数越界、无符号数

1.整数范围 对于一个字节(8位),可以表达的范围是00000000 ~ 11111111 其中00000000 ——> 0 11111111 ~ 10000000 ——> -1 ~ -128(从大到小) 00000001 ~ 01111111 ——> 1~127(从小到大&#xff…

Yolov8新版本解读(二):优化点如何加入新版本,通过加入轻量级网络Ghostnetv2对比说明

本文目的: 最近yolov8进行了一次较大的更新,对一些优化点加在哪个位置上有些变动,因此本文主要通过具体案列进行对比和说明,以便在新版本上能够轻松上手。 老版本 ultralytics/nn 新版本更新为: modules文件夹下内容如下: 解读: 将modules.py拆分为 1.__init__.…

服务器中了malox勒索病毒后怎么办怎么解决,malox勒索病毒解密数据恢复

服务器遭受Malox勒索病毒攻击后,快速解密并恢复数据至关重要,以便减少更大的经济损失。近期,新的一波malox勒索病毒正在肆虐,我们收到很多企业的求助,企业的服务器数据库遭到了malox勒索病毒攻击,导致系统内…

四数之和——力扣18

文章目录 题目描述双指针法 题目描述 双指针法 class Solution { public:vector<vector<int>> fourSum(vector<int>& nums, int target){int nnums.size();vector<vector<int>> res;sort(nums.begin(), nums.end());for(int a0;a<n;a){if…

AI介绍——chat gpt/文心一言/claude/bard/星火大模型/bing AI

AI体验 1. AI 介绍&#xff08;注册和使用&#xff09;1.1 Chat GPT1.2 文心一言1.3 Slack 上的 Claude1.3.1 Claude 介绍1.3.2 Claude 使用 1.4 Google的Bard1.4.1 Bard 介绍1.4.2 Bard 使用 1.5 科大讯飞的星火大模型1.5.1 星火大模型 介绍1.5.2 星火大模型 使用 1.6 new bin…

偶然看到DeepFaceLab(DeepFake)在2023年的新动向

DeepFaceLab相关文章 一&#xff1a;《简单介绍DeepFaceLab&#xff08;DeepFake&#xff09;的使用以及容易被忽略的事项》 二&#xff1a;《继续聊聊DeepFaceLab&#xff08;DeepFake&#xff09;不断演进的2.0版本》 三&#xff1a;《如何翻译DeepFaceLab&#xff08;DeepF…

微信消息撤回时间延长到2小时了?

““微信发出2小时后也可撤回,上班族的福音. ” 近日&#xff0c;有传言称 微信撤回消息的时间将延长至2小时 引起舆论关注 微信作为国内最大的网络社交平台&#xff0c;目前用户已超过11亿。 虽然微信已经做的很不错了&#xff0c;但微信消息撤回这一功能&#xff0c;还是…

Docker实战-关于Docker镜像的相关操作(二)

导语   之前的分享中&#xff0c;我们介绍了关于Docker镜像的查询操作相关的内容&#xff0c;下面我们继续来介绍删除清理、导入导出、创建镜像等操作。 如何删除和清理镜像&#xff1f; 使用标签删除镜像 可以使用docker rmi 或者是 docker image rm 命令来删除镜像&#x…

详解 HashMap 的底层实现原理

作为一名程序员&#xff0c;你可能经常使用 HashMap 这个重要的数据结构&#xff0c;但你对它的底层实现原理可能不够了解。本文将通过图文结合的方式&#xff0c;为你详细解析 HashMap 的底层实现原理&#xff0c;并回答一些常见问题&#xff0c;让你能够更好地理解和应用 Has…

电商分析:微商城还有入局的必要吗?

电商行业发展日新月异&#xff0c;新模式、新平台不断涌现。微商城系统作为一种新型的电商模式&#xff0c;正逐渐受到越来越多的关注和青睐。那么&#xff0c;微商城系统还有入局的必要吗&#xff1f; 首先&#xff0c;我们需要了解一下什么是微商城系统。微商城系统是一种基于…

SphereEx-DBPlusEngine 1.5.0 功能解读:CDC

前一段时间&#xff0c;面向新一代数据架构的数据库增强引擎 SphereEx-DBPlusEngine 正式发布 1.5.0 版本&#xff0c;新增 CDC 和数据库防火墙两大重磅功能&#xff0c;本篇文章笔者就给大家详细介绍 CDC 功能的实现逻辑和技术细节。 CDC CDC&#xff08;Change Data Captur…

LeetCode 27题:移除元素

题目 给你一个数组 nums 和一个值 val&#xff0c;你需要 原地 移除所有数值等于 val 的元素&#xff0c;并返回移除后数组的新长度。 不要使用额外的数组空间&#xff0c;你必须仅使用 O(1) 额外空间并 原地 修改输入数组。 元素的顺序可以改变。你不需要考虑数组中超出新长…

概念解析 | 利用IAA迭代自适应方法实现高精度角度估计

利用IAA迭代自适应方法实现高精度角度估计 注1:本文系“概念辨析”系列之一,致力于简洁清晰地解释、辨析复杂而专业的概念。本次辨析的概念是:IAA迭代自适应方法在雷达角度估计中的应用。 背景介绍 在雷达目标检测与定位中,准确估计目标角度是实现高精度定位的关键。传统的基于…

【FAQ】如何隐藏网页H.265播放器EasyPlayer.js的实时录像按钮?

目前我们TSINGSEE青犀视频所有的视频监控平台&#xff0c;集成的都是EasyPlayer.js版播放器&#xff0c;它属于一款高效、精炼、稳定且免费的流媒体播放器&#xff0c;可支持多种流媒体协议播放&#xff0c;包括WebSocket-FLV、HTTP-FLV&#xff0c;HLS&#xff08;m3u8&#x…

2023最新版本Activiti7系列-监听器讲解

监听器 1.执行监听器 在流程实例执行过程中触发某个事件时&#xff0c;Activiti提供的执行监听器可以捕获该事件并执行相应的外部的Java代码&#xff0c;或者对指定的表达式求值。在流程实例执行过程中触发某个事件时&#xff0c;Activiti提供的执行监听器可以捕获该事件并执行…

《动手学深度学习》-67自注意力

沐神版《动手学深度学习》学习笔记&#xff0c;记录学习过程&#xff0c;详细的内容请大家购买书籍查阅。 b站视频链接 开源教程链接 自注意力 在深度学习中&#xff0c;经常使用卷积神经网络&#xff08;CNN&#xff09;或循环神经网络&#xff08;RNN&#xff09;对序列进行…

【暑期每日一练】 day14

目录 选择题 &#xff08;1&#xff09; 解析&#xff1a; &#xff08;2&#xff09; 解析&#xff1a; &#xff08;3&#xff09; 解析&#xff1a; &#xff08;4&#xff09; 解析&#xff1a; &#xff08;5&#xff09; 解析&#xff1a; 编程题 题一 …

全球十大知名看黄金即时行情的软件名单(综合榜单)

在当今的数字化时代&#xff0c;黄金投资已成为一种受欢迎的投资方式。为了获取即时的黄金行情信息&#xff0c;许多投资者开始使用黄金即时行情软件。然而&#xff0c;选择一款合适的软件并不是一件容易的事情。那么&#xff0c;如何选适合自己需求的软件呢&#xff1f;首先&a…

Hyper实现git bash在windows环境下多tab窗口显示

1.电脑上安装有git bash 下载链接&#xff1a;https://gitforwindows.org/ 安装Hyper 下载链接:官网 https://hyper.is/ 或者在百度云盘下载&#xff1a; https://pan.baidu.com/s/1BVjzlK0s4SgAbQgsiK1Eow 提取码&#xff1a;0r1f 设置 打开Hyper&#xff0c;依次点左上角-&g…

Arduino驱动MQ5模拟煤气气体传感器(气体传感器篇)

目录 1、传感器特性 2、硬件原理图 3、驱动程序 MQ5气体传感器,可以很灵敏的检测到空气中的液化气、天然气、煤气等气体,与Arduino结合使用,可以制作火灾液化气、天然气、煤气泄露报警等相关的作品。 1、传感器特性 MQ5用于消费和工业行业中气体泄漏检测设备,该传感器适…