大家好,我是「前端实验室」
爱分享的了不起~
很多人应该没听说 honojs,大部分还是停留在 express、koa、egg、sails,或者有一部分喜欢用 Nestjs 的。
今天就给大家推荐下 honojs
。它在GitHub上的 star 数也还可以,拥有超过 9.5k 星标、3.3k 个项目依赖,并有来自 100 多位贡献者的代码贡献。这是一个值得关注的前端开源项目。
honojs
简介honojs
是一个轻量级、高性能、多运行时的 Edges Web 框架,由 TypeScript 编写。它支持多种 JavaScript 运行时,包括 Cloudflare Workers、Fastly Compute@Edge、Deno、Bun、Vercel、Lagon、AWS Lambda、Lambda@Edge 和 Node.js。
它具有多平台支持,内置功能,以及优秀的应用案例,如 Cdnjs API Server、Polyfill.io、Ultra 等。
honojs
特性相比于其他框架,honojs
最突出的特点在于其速度和轻量级。
honojs
honojs
是一个类似于 Express 的简单 Web 应用程序框架,专为在 CDN Edge 上运行而设计。以下是一些典型的应用场景:
接下来,我们一起来安装和使用下。
使用 npm 安装它:
npm install hono
就这么简单。但需要注意 Node.js的环境,版本要是18及以上。
接下来,在 src/index.ts 中,初始化一个新的 honojs
应用程序:
import { Hono } from "hono";
const app = new Hono();
app.get("/posts/:appViewPoints/comments", async (c) => {
// 这将返回一个HTTP响应。
});
app.post("/posts/:appViewPoints/comments", async (c) => {
// 这将返回一个HTTP响应。
});
export default app
这样我们的Web服务的接口就搞定了。当然,我们还可以对请求的参数进行处理,比如:
app.get('/posts/:id', (c) => {
const id = c.req.param('id');
c.header('X-Message', 'Hi!');
return c.text(`你可以查看 ${id} 的内容!`);
});
跨域处理。在前后端分离的今天,后端 API 中需要启用特定的跨源资源共享(或CORS)标头。幸运的是,honojs
有一种快速的方法可以为您的应用程序启用此功能。一起来看一下:导入cors模块并将其作为中间件即可。
现在把它添加到src/index.ts中的 API :
import { Hono } from "hono";
import { cors } from "hono/cors";
const app = new Hono();
app.use("/*", cors());
这样,当前端向/*
发出请求时,honojs
将自动生成 CORS 标头并将其添加到 API 的响应中,从而允许前端 UI 与其交互而不会出错。
honojs
就是一个 Web 框架。如果你熟悉像 Express 这样的框架,那上手难度几乎只有一颗星。难度在于它能搭配的环境很多,但这不正是 honojs
的优势所在吗?
honojs
也在逐步增加功能和完善社区,这将有助于吸引更多的开发者和用户,并使 honojs
变得更加强大和成熟。希望 honojs
能够得到更多关注和支持,让它在边缘 Web 开发领域取得更大的成功。更多详情,请查阅如下地址。
honojs
官网地址 https://hono.dev/