导读

云开发是腾讯云为开发者提供的一站式后端云服务,帮助开发者免运维、无服务器快速上线后端服务,同时也支持跨平台服务,关于跨平台支持,云开发的云函数服务、数据库服务、文件存储服务可以通过多种调用方式支,可以同时支撑多端的业务联动。

调用方式

云开发有多种调用方式,客户端调用可通过小程序sdk、jsSDK、flutterSDK等、服务端调用可通过nodejs sdk、php sdk等,也可通过http api调用,通过http触发云函数等多种调用方式,本文主要通过http触发云函数的方式来完成部署一个web的后端服务

http触发云函数

开启http触发云函数有两种方式

通过在web云开发控制台开启http触发路径

image.png

通过cloudbase cli工具进行云函数发布,通过cli工具发布的云函数会自动开启http触发,具体发布方法可前往CloudBase CLI进行查看

image.png

云函数的入参

使用http触发云函数时,HTTP 请求会被转化为特殊的结构体,称之为集成请求

image.png

云函数的返回值

云函数可以返回string、object、number 等类型的数据,或者返回集成响应,可以使用集成响应返回HTML、JS文件、二进制文件等,随后云接入会将返回值转化为正常的 HTTP 响应,这块内容不在这里进行赘述,可自行前往查看云函数的返回值

托管NodeJS Server

目前云开发已经支持托管NodeJS,可以使用Express、Koa等常用的框架进行开发,唯一不同的是使用了serverless-http ,把集成请求转化为NodeJS Server 能接收的 IncommingMessage ,同时把返回的 ServerResponse 转化为集成请求,我们来看下如何使用serverless-http来进行转发,本文以Koa框架来进行演示

安装并引入Koa

image.png

安装并引入serverless-http改造云函数

image.png

部署云函数

image.png

通过浏览器访问云函数
到这里一个简单的通过koa框架搭建的后端服务就完成

image.png

写在最后

本文仅仅只是简单的一个部署web后端服务的一个小示例,可以在Koa、Express等框架中做更多的延伸,比如路由,处理请求中间件等操作,在云函数中可以结合wx-server-sdk,便利的使用云开发的云函数服务、数据库服务、文件存储服务等。

通过此方式将不在局限,前端到底是app/web/H5/pc/或者是各平台小程序,都可以发送HTTP请求来调用云开发的资源,后端不需要重新再编写复杂的查询语句、处理文件上传、可节省更多的时间来专注业务逻辑。


Life
0 声望1 粉丝

前端开发工程师,熟悉React、NodeJS,在小程序、云开发方面有深入研究,通过云开发开发多套商用小程序,热衷于新技术的向往,腾讯云大学《小程序·云开发实战智慧衣橱小程序》直播课讲师。