我自己的小程序(在开发中),自己的公众号(运营一年)。我想我自己的小程序调用我自己公众号中的文章,怎么实现。我做了个自己拷贝网址的是可以的,我想自动调取。请大师们指点指点。
谢谢!请看一下,这个大师说的可以的。
- 技术要求
微信开发经验+小程序开发经验+会一点node
- 思路
在6月份的一次更新,webview组件增加新的能力,webview 指向网页的链接。可打开关联的公众号的文章,其它网页需登录小程序管理后台配置业务域名。所以我们可以利用微信提供的"https://api.weixin.qq.com/cgi-bin/material/batchget_material“接口获取所有的素材列表,我们可以将这些文章存入数据库,方便使用,在将web-view 中的src替换为获取到的素材文章的永久链接,即可
- 源码demo
- 获取微信中的素材列表
//使用了request这个库用于服务端请求
const token_url=“https://api.weixin.qq.com/cgi-bin/token”;
const url = “https://api.weixin.qq.com/cgi-bin/material/batchget_material”;
const appid=“自己的appid”;
const appsecret=“自己的APPsecret”;
const type=“news”;
const offset=“0”;
const count=“20”;
//获取token
let token_info=await new Promise(function(resolve,reject){
request.get(`${token_url}?grant_type=client_credential&appid=${appid}&secret=${appsecret}`,function(error, response, body){
if (!error && response.statusCode == 200) {
resolve(body);
}
reject(error);
});
})
token_info=JSON.parse(token_info);
const access_token=token_info.access_token;
let data = {
“type”: type,
“offset”:offset,
“count”: count
};
// 获取素材列表
const res=await new Promise(function (resolve, reject) {
request.post({url:`${url}?access_token=${access_token}`, form:JSON.stringify(data)}, function (error, response, body) {
console.log(“body–>”,body);
if (!error && response.statusCode == 200) {
resolve(body);
}
reject(error);
})
});
console.log(“res–>”,res);
- 小程序端
//src 中填入获取到的永久链接