![](https://img.haomeiwen.com/i6913450/cfff36cb2f760a34.png)
![](https://img.haomeiwen.com/i6913450/591a25eecdfb8d31.png)
1.新建云函数Http,在终端使用yarn add got下载got
![](https://img.haomeiwen.com/i6913450/5d032766e0dde4c5.png)
// require + module.exports js 模块化规范, commonJS
// import from export default es6 模块化 node 6以下不支持
const cloud = require('wx-server-sdk');
const got = require('got');
cloud.init();
const db = cloud.database();
// async 同步 是函数修饰符, es7, 让异步的代码同步化
exports.main = async () => {
const photoInfos = [];
const photos = await db.collection("photos").get();
console.log(photos);
for(let i = 0; i < photos.data.length; i++) {
const photo = photos.data[i];
let openid = photo._openid;
const user = await db.collection('userInfo').where({
_openid: openid
}).get();
if (user.data.length > 0) {
photo.user = user.data[0]
}
photoInfos.push(photo);
}
return photoInfos;
// 费时, 异步的, 但是想保持执行的顺序和阅读的顺序,
// 用户表 userInfo photos 图片
// database photos map
// userInfo
// const photos = [{
// _id:,
// _openid:,
// image:'',
// 用户的性息
// user: {
// nickname: '啊哈哈哈',
// province: '南昌'
// }
// }]
// let getResponse = await got('httpbin.org/get')
// console.log(getResponse);
// let postResponse = await got('httpbin.org/post', {
// method: 'POST',
// headers: {
// 'Content-Type': 'application/json'
// },
// body: JSON.stringify({
// title: '这是标题',
// value: 123
// })
// })
// console.log(postResponse.body);
// // await 让我们的代码等待一下 只有async 才可以用
// return postResponse.body
}
云函数返回的是photoinfos[]数组
在page里调用成功返回res.result==photoinfo[]
![](https://img.haomeiwen.com/i6913450/23dd184b3b9afb64.png)
调用云函数getOpenId返回eent.userinfo
控制台输出 console.log(res)
console.log(res.result)
如下图
![](https://img.haomeiwen.com/i6913450/c1454e54864f6021.png)
有神魔关系
这些数据和表有关系
![](https://img.haomeiwen.com/i6913450/1a93c538fbb48eea.png)
网友评论