微信支付(公众号)爬坑记,包含 total_fee 失败和 JSAPI 签名验证失败等等
做商城类网站不免会需要做支付功能,目前在中国大陆通用的做法就是使用支付宝支付和微信支付,上一篇博文已经讲个支付宝支付。
这篇文章来讲一讲微信支付,微信支付的方式有很多种,本文主要讲 JSAPI 支付的前端部分。
- 各种配置不细讲。
- 后台需要生成各种签名后返回给前台调用。
- 前台调用,微信浏览器提供一个方法 WeixinJSBridge.invoke, 但是这个还需要加上 window 来执行不然会报错, 无法通过。
- 前端严格按照微信提供的 demo 来写一个字符都不能错,参数一次为:appId, timeStamp,nonceStr,package,signType,paySign 需要仔细确认。
- 后台返回的数据格式也得按照 demo 中提供的格式来,不然会报各种各样奇怪的报错返回( 微信返回的提示不友好请反复确认传入的参数格式 )。
- 一旦确认参数没有问题,但是还报错那么后台需要确参与签名的几个参数分别为:appId、timeStamp、nonceStr、package、signType 确认无误即可通过。
总之微信支付前端需要做的工作很少,切记各种参数要正确。需要反复确认,做支付得细心。另外还需要仔细阅读文档。
具体参见微信支付 JSAPI 开发文档
微信支付(公众号)爬坑记,包含 total_fee 失败和 JSAPI 签名验证失败等等的更多相关文章
- JAVA开发微信支付-公众号支付/微信浏览器支付(JSAPI)
写这篇文章的目的有2个,一是自己的项目刚开发完微信支付功能,趁热回个炉温习一下,二也是帮助像我这样对微信支付不熟悉,反复看了多天文档还是一知半解,原理都没摸清,更不要说实现了.本以为网上的微信开发教程 ...
- 微信支付公众号支付redirect_uri域名与后台配置不一致,错误码10003
最近弄微信支付,微信支付公众号支付redirect_uri域名与后台配置不一致,错误码10003,最容易出错两个地方 1,appid 对应不到 2,开发者网页授权 填写域名 文章来自http://ww ...
- 微信支付-公众号支付H5调用支付详解
微信公众号支付 最近项目需要微信支付,然后看了下微信公众号支付,,虽然不难,但是细节还是需要注意的,用了大半天时间写了个demo,并且完整的测试了一下支付流程,下面分享一下微信公众号支付的经验. 一. ...
- 企业号微信支付 公众号支付 H5调起支付API示例代码 JSSDK C# .NET
先看效果 1.本文演示的是微信[企业号]的H5页面微信支付 2.本项目基于开源微信框架WeiXinMPSDK开发:https://github.com/JeffreySu/WeiXinMPSDK 感谢 ...
- 微信支付---公众号支付和H5支付区别
微信支付分为如下几种:(来源https://pay.weixin.qq.com/wiki/doc/api/index.html) 本文主要讲解公众号支付和H5支付,两者均属于线上支付比较常用的方式: ...
- 初涉node.js做微信测试公众号一路填坑顺便发现个有趣的其他漏洞
[微信测试公众号] 半年前耍着玩搭起来的“微信简历”,是LAMP版的,很皮毛. 微信的官方文档在这 http://mp.weixin.qq.com/wiki/index.php 1.获取access ...
- 亲历H5移动端游戏微信支付接入及那些坑(二)——获取Openid和授权
第一篇中将一些坑说明,那么这篇开始正式进入接入步骤.具体的参数说明,我不会列出,毕竟微信官方文档都有,我想大家都看的懂,而且这接口也有可能微信会变动,所以不列出来,也是不想引起大家的误解,接入步骤只起 ...
- 亲历H5移动端游戏微信支付接入及那些坑(四)——参考文档
写完三篇后,我觉得微信支付的文档确实比较乱,所以在此做一个整理汇总 支付流程相关文档 一下文档已经按照接入顺序排列,请依次参考阅读 微信公众号网页授权两种access_token区别,获取用户open ...
- atitit. access token是什么??微信平台公众号开发access_token and Web session保持状态机制
atitit. access token是什么??微信平台公众号开发access_token and Web session保持状态机制 1. token机制and session保持状态机制 1 ...
随机推荐
- 【C++ 补习】Copy Control
C++ Primer 5th edition, chapter 13. The Rule of Three If a class needs a destructor, it almost surel ...
- 【转】在C#中使用Json.Net进行序列化和反序列化及定制化
作者:Minotauros 原文地址:在C#中使用Json.Net进行序列化和反序列化及定制化 序列化(Serialize)是将对象转换成字节流,并将其用于存储或传输的过程,主要用途是保存对象的状态, ...
- C++练习 | 单向链表类模板(包含类模板中静态变量初始化格式)
#include <iostream> #include <string> using namespace std; template <class T> clas ...
- mysql行(记录)的详细的操作
目录 一 介绍 二 插入(增加)数据INSERT 三 更新(修改)数据UPDATE 四 删除数据DELETE 五 查询数据SELECT(重点) 六 权限管理 阅读目录 一 介绍 MySQL数据操作: ...
- 从入门到自闭之Python序列化
序列化(背) json :将数据类型转换成字符串(序列化),将字符串装换成原数据类型(反序列),支持dict,list,tuple等,序列后都变成了列表 dumps,loads ------ 用于网络 ...
- docker 配置私有仓库
1.使用docker 命令: 1.准备两台虚拟机,这里使用的是centos7,两台使用yum install docker 安装docker; 2.给两台虚拟机设置固定ip: 进入到虚拟机内 敲入命令 ...
- ListVie的用法
1.在布局中放入一个listView <ListView android:id="@+id/list_view" android:layout_width="mat ...
- Android系统分析之Audio音频流, 音频策略, 输出设备之间的关系
音频流, 音频策略, 输出设备之间的关系 只针对 AudioManager.STREAM_VOICE_CALL 音频流类型进行分析 涉及到的类: hardware/libhardware_legacy ...
- Spark 2.43读取.json文件入库到MySQL 8
如果没有安装包,可以用我的这个 百度网盘链接点击进入 提取码: eku1 解压之后 准备开始配置环境变量 如果运行时候报错参考 (java.io.IOException: Could not loca ...
- oracle重置dba用户密码
1.进入sqlplus里面: [oracle@master ~]$ sqlplus / as sysdba SQL*Plus: Release 12.1.0.2.0 Production on Tue ...