跳到主要内容

托管 Node.js Server

使用 HTTP 访问 + 云函数,可以很轻松地托管 Node.js 服务端程序。

准备工作

  1. 准备一个基础项目目录,参考 快速开始 - 初始化目录

创建简单的 Hello World

我们在工作目录下执行以下命令,创建一个最简单的 Node.js Server:

mkdir functions/server && touch functions/server/index.js && touch functions/server/package.json

functions/server/index.js 的内容如下:

// functions/server/index.js
const serverless = require("serverless-http");

exports.main = serverless((req, res) => {
res.statusCode = 200;
res.setHeader("Content-Type", "text/plain");
res.end("Hello World\n");
});
提示

我们此处使用了 serverless-http,把集成请求转化为 Node.js Server 能接收的 IncommingMessage,同时把返回的 ServerResponse 转化为集成请求

functions/server/package.json 的内容如下:

{
"name": "my-serverless-server",
"version": "1.0.0",
"main": "index.js",
"dependencies": {
"serverless-http": "^2.3.0"
}
}

发布

发布云函数:

cloudbase fn deploy server

创建路由:

cloudbase service create -p server -f server

随后便可以通过 https://${env}.service.tcloudbase.com/server 访问到 Node.js Server:

curl https://${env}.service.tcloudbase.com/server
Hello World