hapi入门文档
发布于 2 年前 作者 Zuckjet 3395 次浏览 来自 分享

hapi入门文档

hapi是一个用于构建应用和服务的丰富框架,hapi使得开发者能够更专注于编写可重复使用的应用逻辑,而不是把时间花在搭建基础设施上。

Server

server对象是主应用的容器。server管理着所有启动的连接和框架提供的设施。一个server可以包含一个或一个以上的连接。

创建一个server: new Server([options])

options中有一些可选择的配置选项:

  1. app 具体的应用配置信息,可以通过server.setttings.app获得。比如: const server = new Hapi.Server({ app:{num:1000}, }); 然后通过server.settings.app可以获得app这个对象(注意app内容必须是对象形式,不能是字符串)
  2. connections 每个连接都有默认的连接配置信息,这些配置信息都可以通过各自的连接进行设置。

(1)app:具体的应用连接配置信息,可以通过connection.setting.app获得。app提供了一个安全的地方去存储应用的配置信息,不会与框架内部的信息发生冲突.

(2)compression:默认是true,如果设置成false,响应内容编码就会失效。

(3)load:连接加载的限制信息。

(4)plugins:具体的插件配置信息,可以通过connection.setting.plugins获取。提供一个地方去存储和传递插件信息。

(5)router:根据路由表控制请求的路由分配。

  1. debug 该参数决定哪些记录事件会被送入到console端口。
  2. load 进程负载监控。

(1)sampleInterval:以毫秒为单位的采样频率

server.properties

(1) server.app

提供一个安全的地方去存储服务器端确定的程序运行时的数据,不会和框架其他数据产生冲突。只要能够获取到服务就能获取到给数据。

(2) server.connection

一个包含服务连接数量的数组。当服务对象是从server.select()返回的,连接数据仅仅包含符合条件匹配的连接。

(3) server.info

当服务只包含一个连接的时候,info对象包含了这个唯一连接的信息。

(4) server.load

一个包含进程加载度量的对象。

(5) server.listener

当服务只包含一个连接,listener是唯一连接的node http 服务对象。

(6) server.methods

一个可以提供访问服务方法的对象。

(7) server.plugins

一个包含被每个注册插件暴露出来的值的对象。

(8) server.mime

提供用于设置内容类型信息的服务端MIME数据库。该对象不能被直接更改,只能通过mime服务设置。

回到顶部