为了在支持 fetch
API 的 Web 兼容边缘运行时中运行 h3 应用,使用 Request
和 Response
,请使用 toWebHandler
适配器将 h3 应用转换为类似 fetch 的函数。
用法
首先,创建应用条目:
app.mjs
js
import { createApp, defineEventHandler } from 'h3'
export const app = createApp()
app.use(defineEventHandler(() => 'Hello world!'))
创建网页条目:
web.mjs
js
import { toWebHandler } from 'h3'
import { app } from './app.mjs'
// 创建 Web 适配器
export const handler = toWebHandler(app)
// 将处理程序与您的运行时集成。
// 输入是请求,响应是 Promise<Response>
本地测试
您可以通过传递 Request 对象,使用任何兼容的 JavaScript 运行时来测试适配器。
web.test.mjs
js
import { handler } from './web.mjs'
const response = await handler(new Request(new URL('/', 'http://localhost')))
console.log(await response.text()) // Hello world!
使用node ./web.test.mjs
运行。