view benchmark/bun-http-framework-benchmark/src/bun/h3.ts @ 210:0abed117e623

Updated manifest color.
author MrJuneJune <me@mrjunejune.com>
date Sun, 15 Feb 2026 15:47:38 -0800
parents a8976a008a9d
children
line wrap: on
line source

import {
    toWebHandler,
	createApp,
	createRouter,
	eventHandler,
	toNodeListener,
	getQuery,
	setResponseHeader,
	readBody
} from 'h3'

const app = createApp()
const router = createRouter()

router.get(
	'/',
	eventHandler((event) => {
		setResponseHeader(event, 'content-type', 'text/plain')

		return 'Hi'
	})
)

router.get(
	'/id/:id',
	eventHandler((event) => {
		const query = getQuery(event)

		setResponseHeader(event, 'content-type', 'text/plain')
		setResponseHeader(event, 'x-powered-by', 'benchmark')

		return `${event.context.params?.id} ${query.name}`
	})
)

router.post(
	'/json',
	eventHandler((event) => readBody(event))
)

app.use(router)

Bun.serve({
    port: 3000,
    fetch: toWebHandler(app) as any
})