[mini-blog]基于云开发的博客小程序使用教程

mini-blog是一款基于云开发的博客小程序,该小程序彻底不依赖任何后端服务,无需本身的网站、服务器、域名等资源,只须要自行注册小程序帐号便可。node

使用教程

1. 前期准备

  • 安装最新版微信开发者工具「可到微信小程序官网进行下载」
  • nodejs环境「云开发&调试须要使用到nodejs环境」,若第一次进行安装,可自行google安装教程
  • 下载源码:github.com/CavinCao/mi…

2. 项目初始化

首先打开微信开发者工具,导入mini-blog项目,名称可自定义,AppID填我的的小程序帐号git

image

如果为刚注册的小程序帐号,须要手动开通下云开发功能,点击左上角云开发按钮,根据提示开通云开发功能,完成后会跳转到对应的云开发控制台:github

image

3. 云数据库配置

mini-blog的数据源均来自于云数据库,因此在运行前须要初始化云数据库,在云数据库中新增如下集合:数据库

//缓存小程序or公众号的accessToken
access_token
//小程序文章集合
mini_posts
//小程序评论内容集合
mini_comments
//小程序用户操做文章关联(收藏、点赞)
mini_posts_related
//小程序博客相关配置集合
mini_config
//小程序博客相关操做日志
mini_logs
//小程序博客用户FormID(用于模板消息推送)
mini_formids
复制代码

image

4. 云函数部署

首先须要将你的云函数进行上传,在对应的云函数名称上右击-上传并部署。小程序

其中上传并部署有两个,后面也有相关解释,若本地已下载相应的node_modules并调试经过,建议上传全部文件。后端

同时需注意云开发的环境,微信小程序容许用户建立两个环境(一般一个测试环境一个正式环境),须要上传哪一个环境的云函数就切换至哪一个环境。微信小程序

image

最后须要配置下云函数的环境变量,建议给每一个云函数配置相应的环境(若云开发建立了两个环境),云函数的环境变量值与当前运行环境一致。缓存

代码中初始化时会读取对应的环境进行初始化:bash

const cloud = require('wx-server-sdk')
cloud.init({env:process.env.Env})
复制代码

image

到这里,在微信开发者工具中应该能够正常运行了「可是没有文章相关数据」服务器

image

公众号文章同步

目前代码中已经实现将公众号文章同步至云数据库中,相关操做以下:

首先将公众号的AppIdAppSecret配置到adminService云函数的环境变量中,AppIdAppSecret在公众号的开发-基本配置中。

image

而后在公众号中配置相应的IP白名单:

172.81.207.12
172.81.212.74
172.81.235.12
172.81.236.99
172.81.245.51
212.64.65.131
212.64.84.22
212.64.85.139
212.64.85.35
212.64.87.134
212.64.57.239
212.64.68.233
212.64.84.102
212.64.84.30
212.64.84.54
212.64.85.82
212.64.89.109
212.64.89.115
212.64.89.17
212.64.89.18
复制代码

image

最后可手动运行一次,进行初始化,后期可上传云函数的定时触发器,右击adminService云函数,上传触发器便可「默认天天23:00同步一次」

image

其余文章源同步

目前源码中没有实现其余文章源的同步,若是有须要能够自行实现,可参考adminService「同步公众号文章至云数据库中」。只要知足云数据库中mini_posts集合的结构便可。

目前做者主要实现小程序端博客相关的功能,后期根据需求来实现多文章数据源的同步。

当前进度与计划

  • 公众号文章同步
  • 文章列表、文章详情展现
  • 分享、点赞、收藏功能实现
  • 评论相关展现和功能实现
  • 生成海报功能的实现
  • 评论消息通知功能的实现
  • 专题、标签相关功能的实现
  • 后台管理功能实现(文章管理、评论管理等)

最后

目前博客小程序的功能正在陆续开发中,欢迎各位小伙伴体验和分享,同时有任何问题或者好的建议均可以与我交流。

相关文章
相关标签/搜索