nodejs 微信证书 request 使用

Posted mrt_yy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nodejs 微信证书 request 使用相关的知识,希望对你有一定的参考价值。

let request = require(‘request‘);//当然我们引用要写在最上面,但为了看的清楚点就一步一步走吧
request({
//请求地址
url:‘https://api.mch.weixin.qq.com/secapi/pay/refund‘,
//还记得准备的证书吗这里就用到啦
agentOptions: {
cert: fs.readFileSync(path1.join(__dirname,‘../../cert/apiclient_cert.pem‘)),
key: fs.readFileSync(path1.join(__dirname,‘../../cert/apiclient_key.pem‘ ))
},
method: ‘POST‘,
//携带这我们拼接好的参数
body:formData
}, function (err,body) {
//getXMLNodeValue:因为微信返回的结果是xml形式的所以封装了一个解析的方法,会面会贴出来
let trade_state_desc = wechatUtil.getXMLNodeValue(‘return_code‘, body.body.toString(‘utf-8‘));
let return_msg = wechatUtil.getXMLNodeValue(‘return_msg‘, body.body.toString(‘utf-8‘));
let err_code_des = wechatUtil.getXMLNodeValue(‘err_code_des‘, body.body.toString(‘utf-8‘));
//为什么要加上这个参数err_code_des....我也很是无奈前两个参数只能正面是真的访问成功了,但是我试了一下 瞎写的订单号提交
//这两个参数还是正常的,但会多出 err_code_des这个参数,返回的是提示信息.所以前两个参数正确且没有这个参数的时候我才能知道
//提交的信息没有问题,所以就这样写了,但肯定不是很好,我会想想解决办法. if(return_code==‘SUCCESS‘&&return_msg==‘OK‘&&err_code_des==undefined){
log.info("退款成功")
let data = {
result:‘1‘,
msg:‘已退款成功‘

};
res.json(data)
}else {
let data = {
result:‘0‘,
msg:err_code_des

};
res.json(data)
}
});

以上是关于nodejs 微信证书 request 使用的主要内容,如果未能解决你的问题,请参考以下文章

NodeJS之Url的使用

Nodejs搭建wss服务器

nodejs express cheerio request爬虫

使用nodejs typescript将数据插入postgreSQL

如何用nodejs模拟get发送消息

nodejs核心模块之http模块