体验简介


本实验基于 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

前提准备


第一步 创建EMAS Serverless服务空间


  1. 开通EMAS服务并进入控制台(https://emas.console.aliyun.com

  1. 在控制台中创建项目:

1)新用户控制台

2)老用户控制台

  1. 进入项目,创建服务空间:

第二步 云数据库开发


  1. 创建3个数据表:云数据库基于MongoDB非关系型文档数据库,仅仅需要创建三张表即可,分别是: album(相册文件夹)、photo(相片)、wallpaper(壁纸美图)

第三步 云函数开发


  1. 创建两个云函数,分别是 PhotoServer、CollectWallpaperTask,其中PhotoServer负责处理小程序发送的业务请求,CollectWallpaperTask 负责每天定时从网络收集壁纸图片:

  1. 设置PhotoServer的定时任务触发和HTTP路径触发:

  1. 分别上传两个云函数对应的源代码包:

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代码详情:

  1. 两个云函数分别点击部署按钮完成代码部署:

部署成功状态:

意:CollectWallpaperTask在部署之后必须点击“代码运行”按钮,完成一次手动运行,(否则小程序中无法立即显示壁纸,导致任务无法完成,影响打卡抽奖)

运行成功后会抓取今日壁纸到云存储,可打开云存储界面查看。

第四步 小程序开发


  1. 打开提前下载好的支付宝小程序开发者工具,下载并解压小程序demo源码:

小程序源码:

https://mpserverless-demo.oss-cn-shanghai.aliyuncs.com/code/alipay/3.x/photo.zip

支付宝IDE下载:

https://opendocs.alipay.com/mini/ide/download

  1. 打开IDE,导入解压好的小程序demo项目

  1. 在app.js 文件中完成spaceID和spaceSecret 的配置

  1. 运行代码,小程序运行效果如图所示:

  1. 程序搭建完成后,点击右下方️,收藏一张图片,即可完成实验任务,参与抽奖!

EMAS Serverless系列~4步教你快速搭建小程序的更多相关文章

  1. 用python一步一步教你玩微信小程序【跳一跳】

    12月28日,微信上线了小游戏「跳一跳」,瞬间成了全民游戏,如何牢牢占据排行榜的第一位呢?用Python帮助你,Python真的无所不能. 作为技术出身的我们,是不是想用技术改变排名呢? 注意:本文适 ...

  2. 手把手教你制作微信小程序,开源、免费、快速搞定

    最近做了个"罗孚传车"的小程序 一时兴起,做了一个小程序,将个人收集的同汽车相关的行业资讯和学习资料,分享到小程序中,既作为历史资料保存,又提供给更多的人学习和了解,还能装一下:) ...

  3. 小白入门AI教程:教你快速搭建大数据平台『Hadoop+Spark』

    Apache Spark 简介 Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎.Spark是UC Berkeley AMP lab (加州大学伯克利分校的AMP实验室)所开源 ...

  4. 手把手教你玩微信小程序跳一跳

    最近微信小程序火的半边天都红了,虽然不会写,但是至少也可以仿照网上大神开发外挂吧!下面手把手教妹纸们(汉纸们请自觉的眼观耳听)怎么愉快的在微信小游戏中获得高分. 废话不多说,咱们这就发车了!呸!咱们这 ...

  5. discuz X2.0教程]教你快速了解Discuz!程序文件功能,修改文件从此不用再求人

    x3.x数据字典 http://faq.comsenz.com/library/database/x3/x3_index.htm 先从根目录开始,根目录文件一般都是入口,即执行具体功能的代码一般不在这 ...

  6. 【Harbor学习笔记】-教你快速搭建Docker私有仓库

    目录 架构图 Harbor依赖的外部组件 Harbor自有组件 核心组件 安装 1. 下载离线安装包 2. 配置 harbor.cfg (harbor.yml) 3. 启动 Harbor 安装配置问题 ...

  7. vue垂死挣扎系列(一)——vue-cli快速搭建

    项目安装(windows10安装环境+vue-cli 2.x) 安装node 在官网上下载稳定版本的node node.js官网 一路傻瓜安装 测试是否安装成功 cmd中node --version ...

  8. 快速搭建python程序

    公司对外提供了http接口服务,涉及到了des加密,有客户用Python开发,但搞不定加密,客户的问题就是大问题,虽然以前没接触过Python,也只能硬着头皮上,不停的baidu各种资料,从环境搭建. ...

  9. 教你理解微信小程序的生命周期和运行原理

    转自:http://blog.csdn.net/tsr106/article/details/53052879  写微信小程序,他的生命周期不能不知道,不知道小程序就会出现各种bug而无法解决.小助君 ...

随机推荐

  1. 第6组 Beta冲刺 总结

    目录 1. 基本情况 2. 思考与总结 2.1. 设想和目标 2. 计划 3. 资源 4. 变更管理 5. 设计/实现 6. 测试/发布 7. 团队的角色,管理,合作 8. 总结 3. 敏捷开发 1. ...

  2. Vulhub靶场搭建教程

    Vulhub靶机环境搭建 Vulhub地址: Vulhub下载地址 一.所需环境 1.Ubuntu16.04 2.最新版本Docker 二.安装之路 1.下载Ubuntu16.04下载地址(迅雷下载6 ...

  3. 3D编程模式:依赖隔离模式

    大家好~本文提出了"依赖隔离"模式 系列文章详见: 3D编程模式:开篇 本文相关代码在这里: 相关代码 目录 编辑器需要替换引擎 设计意图 定义 应用 扩展 最佳实践 更多资料推荐 ...

  4. Wget命令解释

    Wget主要用于下载文件,在安装软件时会经常用到,以下对wget做简单说明. 1.下载单个文件:wget http://www.baidu.com.命令会直接在当前目录下载一个index.html的文 ...

  5. Weakmap详解

    先看一个例子 let obj = { name: 'toto' } // { name: 'toto' }这个对象能够被读取到,因为obj这个变量名有对它的引用 // 将引用覆盖掉 obj = nul ...

  6. 设计模式-策略模式前端应用校验vue写法

    1.定义:定义一系列算法,把它们一个个封装起来,并且它们可以相互替换 2.实际应用:减少if else的使用,在有多种算法相似的情况下,使用 if-else 所带来的复杂和难以维护,提高维护和可读性, ...

  7. 执行docker一系列命令失败

    出现这种情况之后,执行下面的命令即可. systemctl restart docker

  8. C#中List实体类转换为object 并把参数返回到前端

    用ConvertAll方法转换: List<Object> m= list.ConvertAll(s=> (object)s); 返回的结果:

  9. 记一次 Druid 超时配置的问题 → 引发对 Druid 时间配置项的探究

    开心一刻 一天在路边看到一个街头采访 记者:请问,假如你儿子娶媳妇,给多少彩礼合适呢 大爷:一百万吧,再给一套房,一辆车 大爷沉思一下,继续说到:如果有能力的话再给老丈人配一辆车,毕竟他把女儿养这么大 ...

  10. 007面试题__==和equals的区别

    常见面试题03: 问:==和equals的区别 1)对于基本类型而言,比较的是数值是否相等 对于引用类型而言,比较的是内存地址是否相等 2)equals:比较的是两个对象的内容是否相等