这是什么东西?
hapi(@hapi/hapi)是一个 Node.js Web 框架,用于构建强大、可扩展的应用,开销极小,而且开箱即用、功能齐全——用官方的话说就是“代码由你做主”。
它是一个完整的框架,还是需要我自己把一堆库拼起来的集合?
它是一个完整的 Web 框架:你只需把 @hapi/hapi 作为 npm 依赖安装,它就会帮你处理整个 HTTP 层——路由、请求处理和响应——内部则由打包好的 @hapi/* 模块组成。
我怎么才能把 hapi 服务器跑起来?
先用 npm install @hapi/hapi 安装(需要 Node.js 14.15.0 或更高版本),然后创建服务器、定义路由并启动;hapi.dev 官网上有教程和完整的 API 文档。
用之前我需要装好哪些东西?
只需要 Node.js,版本 14.15.0 或更新即可。hapi 所需的一切都通过打包好的 @hapi/* 模块提供(缓存、路由、MIME 处理、错误负载),所以不需要编译原生代码,也不依赖数据库。
除了路由,hapi 开箱还提供哪些功能?
很多:缓存由 @hapi/catbox 提供,MIME 类型处理由 @hapi/mimos 提供,标准化的错误负载由 @hapi/boom 提供,服务器事件由 @hapi/podium 提供,这些都是内置打包好的。README 里说的“开箱即用、功能齐全”指的就是这些。
hapi 收费吗?有没有付费版本?
不收费。它是一个免费的开源项目,hapi.dev 开发者门户上的教程和文档也都可以免费查看。
Which topics is it in?
scaling, scalable, web-application, apis, application, minimal, routing, web-server, script, caching, web-framework, node