간단하고 빠른 웹 프레임워크 (Hono)
KUKJIN LEE • 3주 전 작성
Hono
는 빠르고 가볍게 웹 애플리케이션을 만들 수 있는 웹 프레임워크로, 특히 Edge 환경에서 사용하기에 적합합니다.
Hono란?
Hono는 TypeScript와 JavaScript 환경에서 사용 가능한 웹 프레임워크로, 성능이 뛰어나며 코드가 단순한 것이 특징입니다. Cloudflare Workers와 같은 서버리스 플랫폼에서 잘 동작하도록 설계되었으며, 미니멀한 코드로 고성능의 HTTP 핸들러를 작성할 수 있습니다.
주요 특징
-
경량화: 매우 작은 크기의 코드베이스로, 불필요한 로직 없이 빠르게 동작합니다.
-
TypeScript 지원: Hono는 TypeScript를 완벽히 지원하여 타입 안전성을 보장합니다.
-
서버리스 친화적: Vercel, Cloudflare Workers 등 서버리스 환경에서 간편하게 사용 가능합니다.
Hono 설치하기
npm install hono
Hono 사용 예제
import { Hono } from 'hono'
const app = new Hono()
app.get('/', (c) => c.text('Hono!'))
app.get('/greet/:name', (c) => {
const name = c.req.param('name');
return c.text(`Hello, ${name}!`);
});
export default app
/
경로로 접근하면 "Hello, Hono!"라는 응답을 받고, /greet/:name
경로로 접근하면 해당 이름에 맞춰 인사를 건네는 응답을 받게 됩니다.Hono의 주요 기능
1. 미들웨어 지원
Hono는 다양한 미들웨어를 제공하며, 커스텀 미들웨어도 작성 가능합니다. 예를 들어, 요청을 로깅하는 미들웨어를 작성하여 적용할 수 있습니다.
app.use('*', async (c, next) => {
console.log(`${c.req.method} ${c.req.url}`);
await next();
});
2. 경로 파라미터와 쿼리 처리
Hono는 경로 파라미터와 쿼리 문자열을 쉽게 처리할 수 있도록 도와줍니다. c.req.param()
및 c.req.query()
를 통해 간편하게 데이터를 접근할 수 있습니다.
3. TypeScript로 타입 안전성 제공
Hono는 TypeScript에서 사용하기 쉽게 설계되어 타입 안전성을 보장합니다. 이를 통해 개발자는 코드 작성 중 오류를 사전에 방지할 수 있습니다.
Hono는 가볍고 빠르며, 간단하게 웹 서버를 구축할 수 있는 프레임워크로 특히 서버리스 환경에서 유리합니다. npm i hono
로 쉽게 설치하고, 다양한 기능을 활용하여 빠르게 API나 웹 애플리케이션을 만들 수 있습니다.
Hono의 경량성과 TypeScript 지원 덕분에 코드 작성이 쉽고 유지보수도 간편합니다.