微信小程序云开发个人博客项目实战目录
一、准备工作及引入 Vant Weapp 小程序 UI 组件库
二、专题的增删改查
三、文章的增删改查
四、云函数获取微信公众号access_token
五、云函数同步公众号文章到小程序
注意:同步的文章为公众号素材,不是已群发的消息
前提:确认公众号的接口权限
一、云函数获取微信公众号access_token
移步至文章:微信小程序云开发个人博客项目实战(4)-- 云函数获取微信公众号access_token
二、遍历调用公众号永久素材列表接口获取数据
接口请求说明
http请求方式: POST,https协议
https://api.weixin.qq.com/cgi-bin/material/get_material?access_token=ACCESS_TOKEN
1、云开发控制台,新建集合posts
,用于保存获取到的微信公众号的文章
2、开发者工具 > 云函数目录 > 右键选择 “新建Node.js” 云函数 getPosts
,修改 index.js
文件
const cloud = require('wx-server-sdk')
const request = require('request')
cloud.init()
async function getWechatPosts(accessToken, offset, count) {
let url = `https://api.weixin.qq.com/cgi-bin/material/batchget_material?access_token=${accessToken}`
var options = {
method: 'POST',
json: true,
uri: url,
body: {
"type": "news",
"offset": offset,
"count": count
}
}
const rp = options =>
new Promise((resolve, reject) => {
request(options, (error, response, body) => {
if (error) {
reject(error);
}
resolve(response);
});
});
const result = await rp(options)
let rbody = (typeof result === 'object') ? result : JSON.parse(result);
return rbody;
}
// 云函数入口函数
exports.main = async (event, context) => {
let token = null;
await cloud.callFunction({
name: 'getAccessToken'
}).then(function (data) {
token = data.result;
});
// let offset = event.offset;
// let count = event.count;
let res = getWechatPosts(token,0,10);
return res;
}
3、创建并部署云函数
4、页面调用,编译调试
//可以在onLoad方法中 调试
onLoad:function(options){
wx.cloud.callFunction({
// 云函数名称
name: 'getPosts',
success: function (res) {
console.log("微信公众号文章列表:")
console.log(res.result)
},
fail: console.error
})
}
获得的数据:
网友评论