图片识别应用助你掌握小程序云端开发
目标:
- 掌握微信小程序云开发模式
- 理解
Serverless
服务 - 借助
百度AI平台
,实现图片识别应用
什么是云开发
serverless:
- 无服务端的概念;
- 传统的:开发完部署->自建服务器/云服务器;serverless就是另外一种选择,可以省掉服务器的硬件成本;
- 微信小程序推出了serverless的模式,即云开发的模式;对个人开发者来说,很友好,不需要买服务器;
微信小程序:
- 个人账号(体验云开发的起步)
- 官网->开发->开发设置->AppID(小程序ID)
- 官网->文档
- 官网->工具
- 企业账号
- 测试账号
实现的小程序功能描述:
- 导入图片,识别出图片中的植物;
- 创建项目,后端服务勾选
小程序·云开发
;
开发者工具:
- 云开发:激活云开发,进行简单的环境名称设置;
- 运营分析
- 数据库:数据
wx.cloud.database()
- 存储:静态资源盘
- 云函数:功能调用(nodejs模块,可在node环境下调用其他依赖的库)
项目目录:
cloudfunctions
:创建nodejs云函数的地方,右键调起;- 如果是普通项目改成云服务,需要手动创建该文件夹
- miniprogram:小程序目录
- components:组建目录
- images:静态资源目录
- pages:页面
- style:样式
- app.js:项目入口文件
- 启动了 wx.cloud.init…,初始化云端环境;
- project.config.json:配置文件
"miniprogramRoot":"miniprogram/"
:指定小程序目录"cloudfunctionRoot":"cloudfunctions/"
:指定云函数目录- 如果是普通项目改成云服务,需要手动配置该字段;
开发工程:
- 小程序引入图片必须是base64或网络图片;
- 云函数就是一个标准的npm管理的nodejs包,依赖于
wx-server-sdk
,因此可以调用微信的API; - 云函数创建之后,右键上传并部署()
百度AI:
- 注册用户,图像识别,创建应用;(每天免费调用500次)
- AppID APIKey SecretKey;
- 终端进入新建的云函数目录下:安装依赖
npm install baidu-api-sdk
小程序如何调用云函数:
- 已经选择的图片,会生成一个有实效的url,可以把它上传到云存储;
- 获取文件后缀名的正则:
filePath.match(/\.[^.]+?$/)
; - 调用云函数:
wx.cloud.callFunction({name:"baidu",data:{fileID:fileID}})
; - 云函数接收参数:
async (event, context) => {..}
; - 异步调用同步等待结果:async/await;
over!
云开发 quickstart
这是云开发的快速启动指引,其中演示了如何上手使用云开发的三大基础能力:
- 数据库:一个既可在小程序前端操作,也能在云函数中读写的 JSON 文档型数据库
- 文件存储:在小程序前端直接上传/下载云端文件,在云开发控制台可视化管理
- 云函数:在云端运行的代码,微信私有协议天然鉴权,开发者只需编写业务逻辑代码
参考文档
小结:
本文为视频学习笔记,主要目标为了解小程序的云开发服务。