微信云开发发送ajax请求云函数怎么写
分类: 微信小程序 专栏: 小程序 标签: 微信云开发发送ajax请求云函数怎么写
2024-12-16 15:22:15 432浏览
微信云开发发送ajax请求云函数怎么写
为啥要写云函数,上线后不能用,可能是在前台发送ajax调用第三方不安全被拦截了呗,就吧ajax请求写到云函数里,
安装http,
npm install http npm install wx-server-sdk
注意的返回参数要加openid,不然不返回给前端
const http = require('http');
const cloud = require('wx-server-sdk')
cloud.init({
env: cloud.DYNAMIC_CURRENT_ENV
})
const db = cloud.database();
const key = "xxxxx";
exports.main = async (event, context) => {
const wxContext = cloud.getWXContext();
let openid=wxContext.OPENID;
let path=encodeURI('/api/auth/idcard?key='+key+'&name='+event.name+'&idcard='+event.idcard);
const options = {
host: 'a.connapi.com',
path: path,
method: 'GET'
};
return new Promise((resolve, reject) => {
const req = http.request(options, (res) => {
console.log(res)
let data = '';
res.on('data', (chunk) => {
data += chunk;
});
res.on('end', () => {
let jj=JSON.parse(data)
console.log("data-1-",jj)
jj.openid=openid;
data=JSON.stringify(jj)
resolve(data);
});
});
req.on('error', (error) => {
reject(error);
});
req.end();
});
};
前端调用和处理返回结果
wx.cloud.callFunction({
name: 'checkIdcardYunsuan',
data: {
idcard:value.code,
name: value.name,
},
success(res) {
console.log('checkIdcardYunsuan======', res);
let checkresult=JSON.parse(res.result)//这里需要转一下
if(checkresult.code==200){
let cdata=checkresult.data;
if(cdata.result==0){
wx.showToast({
title: '实名信息一致'
})
cdata.name=value.name;
cdata.idcard=value.code;
that.updateUserShiming(cdata);
}else{
wx.showToast({
title: '姓名和身份证不一致',
icon: 'none'
})
}
console.log(cdata)
}else{
wx.showToast({
title: checkresult.msg,
icon: 'none'
})
}
}
})
好博客就要一起分享哦!分享海报
此处可发布评论
评论(0)展开评论
暂无评论,快来写一下吧
展开评论
他的专栏
他感兴趣的技术


java
vue
springboot
Mysql
ssm
小程序
uniapp
js和jquery