微信JSSDK支付--公众号内支付---fail_invalid_appid

By | 2018 年 2 月 27 日

认真检查,每个参数的正确性,打印一下签名的字符串是什么,一定要认真

1、网上有教程说timeStamp 字段的S是小写,其实是错的。请保持大写,请保持大写。
2、缺少appId,那么请检查你得到的JSON字符串是不是标准JSON字符串。
    SDK中代码示例

//调用微信JS api 支付
	function jsApiCall()
	{
		WeixinJSBridge.invoke(
			'getBrandWCPayRequest',
			<?php echo $jsApiParameters; ?>,
			function(res){
				WeixinJSBridge.log(res.err_msg);
				alert(res.err_code+res.err_desc+res.err_msg);
			}
		);
	}

那么其中PHP输出部分,检查一下输出是对象,还是什么

jsApiParameters

如果实在不成,改成如下形式

//data 是正常的JSON才可以哦
function jsApiCall(data){
        //data=$.parseJson(data);
        //alert(data.appId);
        WeixinJSBridge.invoke(
            'getBrandWCPayRequest',
            {
                "appId":data.appId,
                "nonceStr":data.nonceStr,
                "package":data.package,
                "paySign":data.paySign,
                "signType":data.signType,
                "timeStamp":data.timeStamp
            },
            function(res){
                WeixinJSBridge.log(res.err_msg);
                alert(JSON.stringify(res));
                alert(res.err_code+res.err_desc+res.err_msg);
            }
        );
    }

发表回复

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据