EMAS Serverless系列~4步教你快速搭建小程序
体验简介
本实验基于 EMAS Serverless 的云函数、云数据库、云存储等云服务能力一站式快速开发小程序《私人云相册》。Demo 主要包括如下功能:
1 相册管理
2 上传相片
3 每日壁纸(该功能利用云函数定时任务,每天从必应复制一张壁纸)
4 收藏壁纸
通过本实验教程,您将快速上手基于云函数、云数据库、云存储等云服务能力一站式快速开发多端小程序。
立即前往体验:https://www.aliyun.com/activity/emas/emas_serverless
背景知识
EMAS Serverless 是阿里云一站式应用研发平台 EMAS 旗下的一款子产品,是面向小程序场景提供的 Serverless 开发、运营套件,开发者无需关心服务器和底层设施运维,专注于代码逻辑和业务本身,具备极简运维、多端适配、按需使用、弹性扩容等优势,帮助开发者快速部署小程序。
●云函数:提供NodeJS运行环境,开发者可以将代码打包提交到云端,无需搭建运维服务器。云函数自动完成机器调度与函数部署,弹性扩容,按量收费,轻松应对突发流量。
● 云数据库:基于MongoDB文档型数据库,数据以JSON格式存储。数据库中的每条记录都是一个JSON格式的文档对象。一个数据库可以有多个集合(相当于关系型数据中的表)。
● 云存储:支持将文本、图片、视频等文件存储到云端。开发者可以在小程序端和控制台使用云存储功能。图片上传成功后,系统会自动生成一个资源链接。开发者可以在小程序中使用该图片地址。
相关云产品
EMAS Serverless
EMAS Serverless 是阿里云提供的基于Serverless技术的一站式后端开发平台,为开发者提供高可用、弹性伸缩的云开发服务,包含云函数、云数据库、云存储、静态网站托管等功能,帮助开发者及企业客户快速实现一云多端应用的搭建,您无需管理服务器等基础设施,便可以无缝对接丰富的云资源。
资源链接:https://www.aliyun.com/activity/emas/emas_serverless
前提准备
- 拥有正常使用的阿里云实名认证账号和支付宝账号
- 下载安装支付宝 IDE 小程序开发者工具(https://opendocs.alipay.com/mini/ide/download)
第一步 创建EMAS Serverless服务空间
- 开通EMAS服务并进入控制台(https://emas.console.aliyun.com)
- 在控制台中创建项目:
1)新用户控制台
2)老用户控制台
- 进入项目,创建服务空间:
第二步 云数据库开发
- 创建3个数据表:云数据库基于MongoDB非关系型文档数据库,仅仅需要创建三张表即可,分别是: album(相册文件夹)、photo(相片)、wallpaper(壁纸美图)
第三步 云函数开发
- 创建两个云函数,分别是 PhotoServer、CollectWallpaperTask,其中PhotoServer负责处理小程序发送的业务请求,CollectWallpaperTask 负责每天定时从网络收集壁纸图片:
- 设置PhotoServer的定时任务触发和HTTP路径触发:
- 分别上传两个云函数对应的源代码包:
PhotoServer代码包下载:
https://mpserverless-demo.oss-cn-shanghai.aliyuncs.com/function/PhotoServer.zip
PhotoServer代码详情:
CollectWallpaperTask代码包下载:
https://mpserverless-demo.oss-cn-shanghai.aliyuncs.com/function/CollectWallpaperTask.zip
CollectWallpaperTask代码详情:
- 两个云函数分别点击部署按钮完成代码部署:
部署成功状态:
注意:CollectWallpaperTask在部署之后必须点击“代码运行”按钮,完成一次手动运行,(否则小程序中无法立即显示壁纸,导致任务无法完成,影响打卡抽奖)
运行成功后会抓取今日壁纸到云存储,可打开云存储界面查看。
第四步 小程序开发
- 打开提前下载好的支付宝小程序开发者工具,下载并解压小程序demo源码:
小程序源码:
https://mpserverless-demo.oss-cn-shanghai.aliyuncs.com/code/alipay/3.x/photo.zip
支付宝IDE下载:
https://opendocs.alipay.com/mini/ide/download
- 打开IDE,导入解压好的小程序demo项目
- 在app.js 文件中完成spaceID和spaceSecret 的配置
- 运行代码,小程序运行效果如图所示:
- 程序搭建完成后,点击右下方️,收藏一张图片,即可完成实验任务,参与抽奖!
EMAS Serverless系列~4步教你快速搭建小程序的更多相关文章
- 用python一步一步教你玩微信小程序【跳一跳】
12月28日,微信上线了小游戏「跳一跳」,瞬间成了全民游戏,如何牢牢占据排行榜的第一位呢?用Python帮助你,Python真的无所不能. 作为技术出身的我们,是不是想用技术改变排名呢? 注意:本文适 ...
- 手把手教你制作微信小程序,开源、免费、快速搞定
最近做了个"罗孚传车"的小程序 一时兴起,做了一个小程序,将个人收集的同汽车相关的行业资讯和学习资料,分享到小程序中,既作为历史资料保存,又提供给更多的人学习和了解,还能装一下:) ...
- 小白入门AI教程:教你快速搭建大数据平台『Hadoop+Spark』
Apache Spark 简介 Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎.Spark是UC Berkeley AMP lab (加州大学伯克利分校的AMP实验室)所开源 ...
- 手把手教你玩微信小程序跳一跳
最近微信小程序火的半边天都红了,虽然不会写,但是至少也可以仿照网上大神开发外挂吧!下面手把手教妹纸们(汉纸们请自觉的眼观耳听)怎么愉快的在微信小游戏中获得高分. 废话不多说,咱们这就发车了!呸!咱们这 ...
- discuz X2.0教程]教你快速了解Discuz!程序文件功能,修改文件从此不用再求人
x3.x数据字典 http://faq.comsenz.com/library/database/x3/x3_index.htm 先从根目录开始,根目录文件一般都是入口,即执行具体功能的代码一般不在这 ...
- 【Harbor学习笔记】-教你快速搭建Docker私有仓库
目录 架构图 Harbor依赖的外部组件 Harbor自有组件 核心组件 安装 1. 下载离线安装包 2. 配置 harbor.cfg (harbor.yml) 3. 启动 Harbor 安装配置问题 ...
- vue垂死挣扎系列(一)——vue-cli快速搭建
项目安装(windows10安装环境+vue-cli 2.x) 安装node 在官网上下载稳定版本的node node.js官网 一路傻瓜安装 测试是否安装成功 cmd中node --version ...
- 快速搭建python程序
公司对外提供了http接口服务,涉及到了des加密,有客户用Python开发,但搞不定加密,客户的问题就是大问题,虽然以前没接触过Python,也只能硬着头皮上,不停的baidu各种资料,从环境搭建. ...
- 教你理解微信小程序的生命周期和运行原理
转自:http://blog.csdn.net/tsr106/article/details/53052879 写微信小程序,他的生命周期不能不知道,不知道小程序就会出现各种bug而无法解决.小助君 ...
随机推荐
- 【抬杠.NET】如何进行IL代码的开发(续)
背景 之前写了一篇文 [抬杠.NET]如何进行IL代码的开发 介绍了几种IL代码的开发方式. 创建IL项目 C#项目混合编译IL 使用InlineIL.Fody 使用DynamicMethod(ILG ...
- 高度灵活可定制的PC布局:头部按钮、左边栏、右边栏、状态栏
什么是自适应布局 CabloyJS提供了一套布局管理器,实现自适应布局 关于自适应布局的概念,强烈建议先阅读以下两篇文章: 自适应布局:pc = mobile + pad 自适应布局:视图尺寸 什么是 ...
- 基于BPM的低代码开发平台应具备什么功能
一个BPM平台应该具备什么样的功能 用户在选型BPM软件的时候往往不知道该关注哪些功能,什么样的BPM软件能满足国内企业应用需求,笔者从多年BPM研发和实施经验提炼了中国特色BPM应该具备的功能 ...
- C++ 炼气期之数据是主角
1. 前言 数据在程序中的重要性,怎么强调都不为过,程序的本质就是通过提供数据处理逻辑,把数据从一种状态变成另一种状态的过程.处理逻辑一定是有针对性的,针对的是数据本身的特性. 只有了解了数据本身的内 ...
- 强化学习-linux安装gym、atari和box2d环境
安装gym和atari环境 pip3 install gym pip3 install gym[atari] pip3 install gym[accept-rom-license] 安装box2d环 ...
- 基于.NetCore开发博客项目 StarBlog - (13) 加入友情链接功能
系列文章 基于.NetCore开发博客项目 StarBlog - (1) 为什么需要自己写一个博客? 基于.NetCore开发博客项目 StarBlog - (2) 环境准备和创建项目 基于.NetC ...
- nextInt和nextLine以及next方法的区别
1.nextInt() 只读取整型的数据,输入读取完之后,光标仍在当前行. 2.nextLine() 扫描到一行内容,当遇见换行符时,结束扫描.一旦输入读取完毕,该方法会将光标移到下一行开始的位置. ...
- 记一次 .NET 某工控数据采集平台 线程数 爆高分析
一:背景 1. 讲故事 前几天有位朋友在 B站 加到我,说他的程序出现了 线程数 爆高的问题,让我帮忙看一下怎么回事,截图如下: 说来也奇怪,这些天碰到了好几起关于线程数无缘无故的爆高,不过那几个问题 ...
- 【Azure Developer】记录一次使用Java Azure Key Vault Secret示例代码生成的Jar包,单独运行出现 no main manifest attribute, in target/demo-1.0-SNAPSHOT.jar 错误消息
问题描述 创建一个Java Console程序,用于使用Azure Key Vault Secret.在VS Code中能正常Debug,但是通过mvn clean package打包为jar文件后, ...
- 编写可维护的webpack配置
为什么要构建配置抽离成npm包 通用性 业务开发者无需挂住配置 统一团队构建脚本 可维护性 构建配置合理的拆分 README文档, chan 构建配置管理的可选方案 通过多个配置管理不同环境的构建, ...