调用支付jsapi缺少参数 total_fee

在做微信支付的时候,使用的是easyWecha框架,https://easywechat.org/zh-cn/docs/payment.html

生成js代码调用微信发起支付的时候遇到【缺少参数 total_fee】的错误。

wx.config(config(array('chooseWXPay')) ?>);
wx.chooseWXPay({
	timestamp: e.js['timestamp'] ,
 	nonceStr: e.js['nonceStr'],
 	package: e.js['package'],
	signType: e.js['signType'],
	paySign: e.js['paySign'], // 支付签名
	success: function (res) {
		// 支付成功后的回调函数
	}
});


网上找了一些攻略,大部分说是在调统一下单接口的时候什么参数没填对,但是下单都已经返回成功了,说明参数格式没什么问题。

total_fee也已经填了,后来观察了下,发现是下单时候填的商家订单号【out_trade_no】用的是固定值,可能是之前用这个固定值做调试的时候,已经把订单信息传给了微信端并被保存,但是那时参数可能不太正确,导致后面再传过去正确参数时,还是一样的订单号,微信端调用了错误的订单信息。

所以更换一个新的【out_trade_no】就解决了问题,出错的时候按照微信文档里的参数仔细核对基本能解决。

你可能感兴趣的:(JS,PHP)