Adapters
Node.js
在 Node.js 上原生运行 h3 服务器。
为了在 Node.js 中启动 h3 应用程序,请使用 toNodeHandler
适配器将 h3 应用程序转换为 Node.js requestListener。
用法
首先,创建一个 h3 应用程序:
app.mjs
import { createApp } from "h3";
export const app = createApp();
app.use(() => "Hello world!");
创建 Node.js 服务器入口:
server.mjs
import { createServer } from "node:http";
import { toNodeHandler } from "h3";
import { app } from "./app.mjs";
createServer(toNodeHandler(app)).listen(process.env.PORT || 3000);
现在,你可以在 Node.js 中原生运行你的 h3 应用程序:
terminal
node ./server.mjs
使用 listhen
另外,你可以使用 unjs/listhen。在这种方法中,你只需创建一个带有 default
或 app
导出的 app.mjs
。
运行以下命令以启动你的服务器:
npx --yes listhen ./app.ts
WebSocket 支持
当使用 listhen 方法时,WebSocket 功能开箱即用!
import wsAdapter from "crossws/adapters/node";
const { handleUpgrade } = wsAdapter(app.websocket);
server.on("upgrade", handleUpgrade);