概述
1:后台
生成统一订单
var _contentStr = fnCreateUrlParam(data); _contentStr += "&key=" + "dkehruteirjfdiheriyterjkjdfdferk"; console.log('xml:') //console.log(_contentStr) var md5 = crypto.createHash('md5'); var sign = md5.update(_contentStr, 'utf-8').digest('hex').toString().toUpperCase(); data.sign=sign; console.log("生成的订单data:") console.log(data) delete data.key; var _xmlData = fnCreateXml(data); var _sendData = "<xml version='1.0' encoding='UTF-8'>" + _xmlData + "</xml>"; //_xmlTemplate.replace(/{content}/) //console.log(_sendData); var url = "https://api.mch.weixin.qq.com/pay/unifiedorder"; var opt = { host: "api.mch.weixin.qq.com", port: '443', method: 'POST', path: "/pay/unifiedorder" }; var body = ''; opt.agent = new https.Agent(opt); var req = https.request(opt, function(res) { res.setEncoding('utf8'); //console.log("Got response: " + res.statusCode); res.on('data',function(d){ body += d; }).on('end', function(){ //console.log(res.headers); console.log('微信返回消息'); //console.log(body); var ret = fnParseReceivedXML(body); //如果回调存在就执行回调函数 //if(typeof callback == 'function'){ //console.log(body); _callback(body,next); //} }); }).on('error', function(e) { console.log("Got error: " + e.message); });前台
var data={
"appId":ret.data.appId, //公众号名称,由商户传入
"timeStamp":ret.data.timeStamp.toString(), //时间戳,自1970年以来的秒数
"nonceStr":ret.data.nonceStr, //随机串
"package":ret.data.package,
"signType":ret.data.signType, //微信签名方式:
"paySign":ret.data.sign,//wxInfo.signature,wxInfo.signature //微信签名
//"trade_type":ret.data.trade_type
};
alert(JSON.stringify(data));
WeixinJSBridge.invoke(
'getBrandWCPayRequest',data ,
function(res){
alert(JSON.stringify(res));
if(res.err_msg == "get_brand_wcpay_request:ok" ) {} // 使用以上方式判断前端返回,微信团队郑重提示:res.err_msg将在用户支付成功后返回 ok,但并不保证它绝对可靠。
}
);
最后
以上就是默默黑裤为你收集整理的nodejs 支付(未完)的全部内容,希望文章能够帮你解决nodejs 支付(未完)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复