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)预备知识 1. 怎么注册开通个人微信小程序 2. 微信小程序云开发教程-互联网软件的运作模式 3.微信小程序云开发教程-云开发对微信小程序 ...

  2. 微信小程序云开发实战:网上商城(二)

    微信小程序云开发实战:网上商城(二) 主页面 入口页面 云函数与云数据库 代码实现 云端实现 小程序端实现 选择UI组件库 WeUI Vant 整合UI组件库 以扩展包的方式引入weui 接下来 主页 ...

  3. 【系】微信小程序云开发实战坚果商城-云开发开篇

    第 3-2 课:云开发开篇 目录 开篇 [系]微信小程序云开发实战坚果商城-开篇 基础篇 [系]微信小程序云开发实战坚果商城-弹性盒子 [系]微信小程序云开发实战坚果商城-ES6 简单入门 [系]微信 ...

  4. 【系】微信小程序云开发实战坚果商城-开篇

    开篇:无服务开发是未来? 目录 开篇 [系]微信小程序云开发实战坚果商城-开篇 基础篇 [系]微信小程序云开发实战坚果商城-弹性盒子 [系]微信小程序云开发实战坚果商城-ES6 简单入门 [系]微信小 ...

  5. 【系】微信小程序云开发实战坚果商城-商城项目搭建

    第 2-1 课:商城项目搭建 目录 开篇 [系]微信小程序云开发实战坚果商城-开篇 基础篇 [系]微信小程序云开发实战坚果商城-弹性盒子 [系]微信小程序云开发实战坚果商城-ES6 简单入门 [系]微 ...

  6. 【系】微信小程序云开发实战坚果商城-扩展篇

    第 5-1 课:扩展篇 目录 开篇 [系]微信小程序云开发实战坚果商城-开篇 基础篇 [系]微信小程序云开发实战坚果商城-弹性盒子 [系]微信小程序云开发实战坚果商城-ES6 简单入门 [系]微信小程 ...

  7. 微信小程序云开发项目实战之商城开发日记 04

    今天是愉快开发商城项目的第四天了,相信如果大家跟着我能把前两天的前端内容敲完,相信你是有比较大的收货的. 今天的内容是完成购物车的前端代码. 购物车的设计还是比较常规的UI,展示商品的信息,提供选中按 ...

  8. 微信小程序云开发入门(一)

    微信小程序云开发入门(一) 摘要:微信小程序云开发是包含了服务器以及数据库的运行环境,而且只需要开发者进行简单的管理,关键是不用服务器进行权限验证,步骤简单不少,非常适合个人开发者和创业者使用.虽然云 ...

  9. 微信小程序云开发实战:网上商城(一)

    微信小程序云开发实战:网上商城(一) 关于本系列 工具与平台 微信开发者工具 小程序账号 云开发 辅助开发工具 开发平台 创建项目 云函数 接下来 关于本系列 偶然的机会需要给人做一个团购类的微信小程 ...

最新文章

  1. 关于MySQLdb连接数据的使用(插入数据——使用前端页面的方式进行可视化)
  2. 架构师之路 — 软件架构 — 软件质量模型
  3. 5、【华为HCIE-Storage】--RAID类型
  4. RK3288 添加USB转虚拟串口设备
  5. 最长公共前缀—leetcode14
  6. JAVA程序设计----关于字符串的一些基本问题处理
  7. 接口设计的幂等性考虑
  8. 高空真人特技表演的这些冷知识,你都知道吗?
  9. 方法论:如何从0到1搭建一套完整的邀请体系
  10. 自动化测试--实现一套完全解耦的测试框架(三)
  11. 2010计算机网络考研真题及答案,2010年计算机考研统考真题参考答案
  12. 2w字详解数据湖:概念、特征、架构与案例
  13. 华为流程解析流程的端到端
  14. Java IO(非常详细)
  15. hive中英文分号问题
  16. windows7 使用激活工具激活系统出现的问题汇总
  17. 深入分析一个经典的单片机供电电路
  18. 刚刚搬进公寓,应该每个月交100块网费好还是买个随身WiFi?
  19. 最大似然估计与极大似然估计_使用最大似然估计对NFL球队排名
  20. 【MFC】数据库操作——ODBC(20)

热门文章

  1. 昂达平板4.22系统,测试新移植的libiconv
  2. 【prompt】什么是 Soft Prompt 和 Hard Prompt ?
  3. Python 爬取电影天堂top最新电影
  4. parallels安装linux命令行,Parallels desktop怎么安装linux系统
  5. 关于对数函数的引入理解
  6. 双IRS辅助毫米波MIMO通信信道估计
  7. ps 如何使用仿制图章工具
  8. 用Python爬取动态加载的诸如百度的图片
  9. 迈思德物联网网关极简宣传页
  10. 【C++笔记】1. C语言复习