微信jsapi怎么调用,我总是支付签名验证失败
js部分代码:
WeixinJSBridge.invoke(
'getBrandWCPayRequest', {
appId: message.appid, //公众号名称,由商户传入
nonceStr:message.noncestr, //随机串
package:message.package,
paySign:message.sign, //微信签名
signType:message.signType, //微信签名方式:
timeStamp:message.timestamp, //时间戳,自1970年以来的秒数
},
function(res){
alert(JSON.stringify(res));
if(res.err_msg == "get_brand_wcpay_request:ok" ) {
} // 使用以上方式判断前端返回,微信团队郑重提示:res.err_msg将在用户支付成功后返回 ok,但并不保证它绝对可靠。
}
);
请求代码:
String timeStamp = Long.toString((long) ((new Date().getTime())*0.001));
String nonceStr = WXPayUtil.generateUUID();
//構造參數,生成sign值
Map<String,String> params = new TreeMap<String, String>();
params.put("appid", config.getAppID());
params.put("timestamp", timeStamp);
params.put("noncestr", nonceStr);
params.put("package", "prepay_id="+resultMap.get("prepay_id"));
params.put("sign", WXPayUtil.generateSignature(params, config.getKey(), WXPayConstants.SignType.MD5));
params.put("signType", WXPayConstants.MD5);