微信API v3踏坑记录
最近对接微信认证,使用到了wechatpay api v3
相较于之前微信支付API,主要区别是:
- 遵循统一的Restful的设计风格
- 使用JSON作为数据交互的格式,不再使用XML
- 使用基于非对称密钥的SHA256-RSA的数字签名算法,不再使用MD5或HMAC-SHA256
- 涉及资金回滚的接口,不再要求HTTPS客户端证书
- 使用AES-256-GCM,对回调中的关键信息进行加密保护
坑1.请求报400
- 解决办法:仔细看微信的文档,即使是业务错误也会返回400:bad request
使用restTemplate发起的请求,捕获RestClientResponseException打印responseBody即可看到具体错误原因
坑2.提示缺少平台证书序列号
- 这个提示让我一直在找head里的Authorization里面的serial_no,实际是不对的,因为设计敏感字段加密,所以需要在head里面设置Wechatpay-Serial
- 关于Wechatpay-Serial:声明加密使用的平台证书
某些情况下,微信支付会更新平台证书。这时,商户有多个微信支付平台证书可以用于加密。为了保证解密顺利,商户发起请求的HTTP头部中应包括证书序列号,以声明加密所用的密钥对和证书。
商户上送敏感信息时使用微信支付平台公钥加密,证书序列号包含在请求HTTP头部的Wechatpay-Serial
坑3:上传图片
- 上传图片一直返回失败详情看另外一篇博文
微信API v3踏坑记录相关推荐
- 微信支付v3版本对接记录
微信支付v3版本对接记录 1.申请公众号和商户号 2.配置商户API_V3_key和商户证书 3.导入依赖 4.构建调用接口httpclient 5.调用jsapi下单示例 6.签名解释 7.回调示例 ...
- node 对接微信支付的踩坑记录(服务端)
因项目需要,对接了微信支付,微信支付对于网页来说没有什么工作量,申请了商户号后,直接将收款码放到网页上就可以,但是小程序需要调起微信支付直接付款,于是认真翻阅了官网要针对小程序做微信支付的对接. 准备 ...
- 微信小游戏踩坑记录(二)
2019独角兽企业重金招聘Python工程师标准>>> 微信视频组件 这次是关于视频组件的,creator的视频组件在小游戏中是没有用的,只能使用小游戏自带的组件.使用小游戏Vide ...
- Cocos Creator 微信小游戏 填坑记录
环境:(ccc-v1.9.1, wx-v1.02.1804251) 微信小游戏禁止了动态生成并执行代码的功能,window.eval(). new Function() ,这些都不能用了. 微信小游戏 ...
- 微信小程序踩坑记录 ------- canvas 生成带小程序码的微信朋友圈分享图
最近做了一个问卷类的小程序,其中的结果页想让用户进行朋友圈分享转发,网上搜索资料,得出解决思路,用 canvas 将页面绘制生成图片,然后保存到手机相册,最终效果如下: 在这里我只写页面里关于 can ...
- 2022微信支付V3避坑指南-paySign签名
新版的微信SDK直接通过maven引用 <dependency><groupId>com.github.wechatpay-apiv3</groupId><a ...
- 微信开放标签踩坑记录
先上微信官方文档 微信文档 以下要注意的点: 微信版本要求为:7.0.12及以上. 系统版本要求为:iOS 10.3及以上.Android 5.0及以上. 微信sdk版本需要在1.6.0以上,版本过低 ...
- 腾讯云IM服务端API集成踩坑记录(一)账号管理调试
1.新增用户要注意大小写: 2.除体验版外,其他版本都无法删除账号: 3.连接失败问题报错,需要增加pom依赖 问题截取:Caused by: java.lang.NoSuchMethodError: ...
- Java中的微信支付(2):API V3 微信平台证书的获取与刷新
1. 前言 在Java 中的微信支付(1):API V3 版本签名详解一文中胖哥讲解了微信支付 V3 版本 API 的签名,当我方(你自己的服务器)请求微信支付服务器时需要根据我方的API 证书对参数 ...
最新文章
- caffeImagenet相关
- PyInstaller库的安装、使用
- C#只用属性来解决兔子,不用方法和循环
- case when then else_每天一个常用MySQL函数-[case_when_then_end]
- LeetCode(908)——最小差值 I(JavaScript)
- Thinkphp学习笔记——友情链接的添加和验证
- 2022java面试总结
- Unity资源加载简析(二)AssetsBundle
- QMH、AMC和STM之间的关系
- 天马行空的刷脸支付方式将是未来
- 网络编程三剑客之sed
- 无限城app为什么服务器繁忙,无限城决战中上弦鬼为何一点忙都帮不上?无惨:全是混子...
- excel表格生成图片的方式
- 嘉和生物药业(开曼)控股有限公司于香港联交所主板成功上市
- 办公技巧:常用的100个Word快捷键
- Python全量字段校验
- 【Zynq UltraScale+ MPSoC解密学习4】Zynq UltraScale+的APU
- Docker -- Harbor介绍
- vue使用腾讯地图(拾取坐标)
- 一段php代码,求一段php代码
热门文章
- 【日常实用篇】解决罗技蓝牙键盘start键alt键功能互换了的问题
- iPhone开机键坏了如何开机
- 中宏涌晟适合工薪族的五种个人投资理财方式
- AndroidStudio制作欢迎界面与应用图标
- 使用AFS, Active Directory和SSSD搭建用于集成电路设计的分布式存储系统 【十一】部署前的准备 3
- BZOJ 4197 NOI 2015 寿司晚宴
- Pipeline aggregations管道聚合-Sibling-1
- SVG入门-嵌入XML和转Base64
- 对抗生成网络GAN系列——GAN原理及手写数字生成小案例
- 九联_UNT400G_S905L2_(联通)_线刷固件包