微信原生小程序+云开发(serverless)

什么是云开发?

serverless = server + less (无服务器或者少服务器)

云开发为什么会出现(因为钱)

之前想要让一个项目上线,需要很多事项
https:// 需要购买证书,正经的一些证书(通配型*)。申请到免费的,一年一续。
nginx,apache
python,php,nodejs,asp
cdn(预付费机制),带宽,几核CPU,多大内存
都需要花钱买

而云开发的出现--------省钱,省时间,省人力…

不再区分前后端,而是以业务分。只需要实现业务逻辑部分即可,后台的繁琐配置由云帮我们实现。

如何开启云开发

必须注册微信小程序,不能使用测试号

云开发注意事项

免费额度,云开发管理后台
免费的支持日活过千没问题

老项目改为云开发

添加下面两个配置即可,分别指定小程序目录和云盘数目录
在这里插入图片描述

云开发使用

1、微信开发者工具选择小程序云开发
2、点击顶部云开发打开管理后台,没有开通的需要开通
在这里插入图片描述
选择资源均衡型免费开通
在这里插入图片描述
然后即可跳入管理后台页面
在这里插入图片描述
管理后台使用的是mongoDB数据库
3、点击cloudfunctions选择一个创建好的云环境
4、右击cloudfunctions创建nodejs云函数(这儿以获取微信步数为例)
编写云函数,其中event即我们传过来的参数

// 云函数入口文件
const cloud = require('wx-server-sdk')

cloud.init()

// 云函数入口函数
exports.main = async (event, context) => {
  const wxContext = cloud.getWXContext()
  const {werundata} = event
  return {
    werundata
  }
}

右击先进行本地调试,也可直接在命令行中执行nodejs代码进行调试
在这里插入图片描述

因为引入了部分依赖,安装依赖,使用的是npm管理器,右击在外部终端窗口中打开,正常安装即可
右击上传并部署到云环境,管理后台点击云函数即可看到刚刚上传的云函数
在这里插入图片描述
页面内容编写

getWeiRunData:function(){
    wx.getWeRunData({
      success: (result) => {
        console.log(result)
        wx.cloud.callFunction({
          name:"getweirun",
          data:{
            werundata:wx.cloud.CloudID(result.cloudID)//即event接收到的内容
          },
          success:(res)=>{
            console.log(res)
          }
        })
      },
    })
  }

wx.getWeRunData获取到的数据为加密数据
在这里插入图片描述
最终获取到的结果,这儿之所以不需要加密是因为本身就用的微信云函数,而微信里面的数据也存在云服务器内部,直接获取即可。若用其他后台语言去实现,则需要授权解密等相关步骤。
在这里插入图片描述
5、创建数据库,建立连接,存储数据
数据库操作文档
在这里插入图片描述

const db = cloud.database()
//连接数据库,添加数据
db.collection('books').add({
  data:{}
})
//获取查询数据
try {
  return await db.collection('books').where({按需查找}).get()
} catch (e) {
  console.error(e)
}

保存成功
在这里插入图片描述
设置索引主键,防止数据重复提交
在这里插入图片描述
记得修改权限,让所有用户可读,否则无法获取数据
在这里插入图片描述
https://nodersurvey.github.io/reporters/
https://juejin.cn/post/6895217723476738061

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值