从入门到实战微信小程序云开发
1、微信云开发介绍
小程序·云开发是官方提供的原生 Serverless 云能力。它提供了一整套完整、标准化的开发流程。弱化了后端以及运维的概。无需搭建服务器,使用微信接口即可集成原生云服务,也可以获得开箱即用的完整的原生云端支持和免鉴权微信服务支持。
2、功能与优势
能力:
- 云函数:在云端运行的代码,微信私有协议天然鉴权,开发者只需编写自身业务逻辑代码
- 数据库:既可在小程序前端操作,也能在云函数中读写的 JSON 数据库
- 存储:可在小程序前端上传/下载云端文件,在云开发控制台可视化管理
优势:
- 无需搭建服务器,快速构建小程序
- 免登录,免鉴权调用微信开放服务
- 统一开发多端应用
- 按量计费,成本更低
官方介绍: 官方介绍和视频
3、功能介绍
3.1 云数据库
云开发提供了一个 JSON 数据库,顾名思义,数据库中的每条记录都是一个 JSON 格式的对象。一个数据库可以有多个集合(相当于关系型数据中的表),集合可看做一个 JSON 数组,数组中的每个对象就是一条记录,记录的格式是 JSON 对象。
3.2 云存储
云开发提供了一块存储空间,提供了上传文件到云端、带权限管理的云端下载能力,开发者可以在小程序端和云函数端通过 API 使用云存储功能。
3.3 云函数
云函数是一段运行在云端的代码,无需管理服务器,在开发工具内编写、一键上传部署即可运行后端代码。
小程序内提供了专门用于云函数调用的 API。开发者可以在云函数内使用 wx-server-sdk 提供的 getWXContext 方法获取到每次调用的上下文(appid、openid 等),无需维护复杂的鉴权机制,即可获取天然可信任的用户登录态(openid)。
3.4 其他
运营 分析、云托管、云调用、HTTP API
参考地址
4、 代码讲解
本次介绍小程序云开发以一个todolist的项目来进行实际的讲解。代码地址: github
4.1 入口函数:
// 云函数入口文件 /cloudfunctions/getOpenId/index.js
const cloud = require('wx-server-sdk')cloud.init({ // 初始化云开发环境env: cloud.DYNAMIC_CURRENT_ENV // 当前环境的常量
})
const db = cloud.database()
// 云函数入口函数
exports.main = async (event, context) => {// 预置创建集合,如果存在则自动失败跳过,自己上架时可以去掉try{ await db.createCollection('todo') }catch(e){}const wxContext = cloud.getWXContext()// 返回当前用户的身份信息,用于数据库记录和查询return {event,openid: wxContext.OPENID,fromopenid: wxContext.FROM_OPENID,appid: wxContext.APPID,unionid: wxContext.UNIONID,}
}
4.2 增删改查
新增
const db = await getApp().database()// 在数据库中新建待办事项,并填入已编辑对信息db.collection(getApp().globalData.collection).add({data: {title: this.data.title, // 待办标题desc: this.data.desc, // 待办描述files: this.data.files, // 待办附件列表freq: Number(this.data.freq), // 待办完成情况(提醒频率)star: false}})
删除
// 在数据库中删除一条id数据 db.collection(getApp().globalData.collection).where({_id: this.data._id}).remove()
修改
// 校验通过后,根据待办 _id,更新待办信息
db.collection(getApp().globalData.collection).where({_id: this.data._id
}).update({data: {title: this.data.title,desc: this.data.desc,files: this.data.files,freq: Number(this.data.freq)}
})
查询
// 在数据中查询查询该用户的信息db.collection(getApp().globalData.collection).where({_openid: openid})
从入门到实战微信小程序云开发相关推荐
- ❤️微信小程序 云开发 教程合集(视频+图文)免费❤️
一.视频版 微信小程序云开发视频教程上线啦 二.图文版 (1)预备知识 1. 怎么注册开通个人微信小程序 2. 微信小程序云开发教程-互联网软件的运作模式 3.微信小程序云开发教程-云开发对微信小程序 ...
- 微信小程序云开发实战:网上商城(二)
微信小程序云开发实战:网上商城(二) 主页面 入口页面 云函数与云数据库 代码实现 云端实现 小程序端实现 选择UI组件库 WeUI Vant 整合UI组件库 以扩展包的方式引入weui 接下来 主页 ...
- 【系】微信小程序云开发实战坚果商城-云开发开篇
第 3-2 课:云开发开篇 目录 开篇 [系]微信小程序云开发实战坚果商城-开篇 基础篇 [系]微信小程序云开发实战坚果商城-弹性盒子 [系]微信小程序云开发实战坚果商城-ES6 简单入门 [系]微信 ...
- 【系】微信小程序云开发实战坚果商城-开篇
开篇:无服务开发是未来? 目录 开篇 [系]微信小程序云开发实战坚果商城-开篇 基础篇 [系]微信小程序云开发实战坚果商城-弹性盒子 [系]微信小程序云开发实战坚果商城-ES6 简单入门 [系]微信小 ...
- 【系】微信小程序云开发实战坚果商城-商城项目搭建
第 2-1 课:商城项目搭建 目录 开篇 [系]微信小程序云开发实战坚果商城-开篇 基础篇 [系]微信小程序云开发实战坚果商城-弹性盒子 [系]微信小程序云开发实战坚果商城-ES6 简单入门 [系]微 ...
- 【系】微信小程序云开发实战坚果商城-扩展篇
第 5-1 课:扩展篇 目录 开篇 [系]微信小程序云开发实战坚果商城-开篇 基础篇 [系]微信小程序云开发实战坚果商城-弹性盒子 [系]微信小程序云开发实战坚果商城-ES6 简单入门 [系]微信小程 ...
- 微信小程序云开发项目实战之商城开发日记 04
今天是愉快开发商城项目的第四天了,相信如果大家跟着我能把前两天的前端内容敲完,相信你是有比较大的收货的. 今天的内容是完成购物车的前端代码. 购物车的设计还是比较常规的UI,展示商品的信息,提供选中按 ...
- 微信小程序云开发入门(一)
微信小程序云开发入门(一) 摘要:微信小程序云开发是包含了服务器以及数据库的运行环境,而且只需要开发者进行简单的管理,关键是不用服务器进行权限验证,步骤简单不少,非常适合个人开发者和创业者使用.虽然云 ...
- 微信小程序云开发实战:网上商城(一)
微信小程序云开发实战:网上商城(一) 关于本系列 工具与平台 微信开发者工具 小程序账号 云开发 辅助开发工具 开发平台 创建项目 云函数 接下来 关于本系列 偶然的机会需要给人做一个团购类的微信小程 ...
最新文章
- 关于MySQLdb连接数据的使用(插入数据——使用前端页面的方式进行可视化)
- 架构师之路 — 软件架构 — 软件质量模型
- 5、【华为HCIE-Storage】--RAID类型
- RK3288 添加USB转虚拟串口设备
- 最长公共前缀—leetcode14
- JAVA程序设计----关于字符串的一些基本问题处理
- 接口设计的幂等性考虑
- 高空真人特技表演的这些冷知识,你都知道吗?
- 方法论:如何从0到1搭建一套完整的邀请体系
- 自动化测试--实现一套完全解耦的测试框架(三)
- 2010计算机网络考研真题及答案,2010年计算机考研统考真题参考答案
- 2w字详解数据湖:概念、特征、架构与案例
- 华为流程解析流程的端到端
- Java IO(非常详细)
- hive中英文分号问题
- windows7 使用激活工具激活系统出现的问题汇总
- 深入分析一个经典的单片机供电电路
- 刚刚搬进公寓,应该每个月交100块网费好还是买个随身WiFi?
- 最大似然估计与极大似然估计_使用最大似然估计对NFL球队排名
- 【MFC】数据库操作——ODBC(20)