- 服务器 Server
- server([options])
- Server options
- 服务器属性 Server properties
- server.auth.default(options)
- server.auth.scheme(name, scheme)
- server.auth.strategy(name, scheme, [options])
- await server.auth.test(strategy, request)
- await server.auth.verify(request)
- server.bind(context)
- server.cache(options)
- await server.cache.provision(options)
- server.control(server)
- server.decoder(encoding, decoder)
- server.decorate(type, property, method, [options])
- server.dependency(dependencies, [after])
- server.encoder(encoding, encoder)
- server.event(events)
- await server.events.emit(criteria, data)
- server.events.on(criteria, listener)
- server.events.once(criteria, listener)
- await server.events.once(criteria)
- server.expose(key, value)
- server.expose(obj)
- server.ext(events)
- server.ext(event, method, [options])
- await server.initialize()
- await server.inject(options)
- server.log(tags, [data, [timestamp]])
- server.lookup(id)
- server.match(method, path, [host])
- server.method(name, method, [options])
- server.method(methods)
- server.path(relativeTo)
- await server.register(plugins, [options])
- server.route(route)
- server.rules(processor, [options])
- await server.start()
- server.state(name, [options])
- server.states.add(name, [options])
- await server.states.format(cookies)
- await server.states.parse(header)
- await server.stop([options])
- server.table([host])
- Route options
- route.options.app
- route.options.auth
- route.options.bind
- route.options.cache
- route.options.compression
- route.options.cors
- route.options.description
- route.options.ext
- route.options.files
- route.options.handler
- route.options.id
- route.options.isInternal
- route.options.json
- route.options.jsonp
- route.options.log
- route.options.notes
- route.options.payload
- route.options.plugins
- route.options.pre
- route.options.response
- route.options.rules
- route.options.security
- route.options.state
- route.options.tags
- route.options.timeout
- route.options.validate
- Request lifecycle
- 请求
- 插件
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
server.ext(events)
在 request lifecycle 扩展中注册一个扩展函数,其中:
events
- 具有以下内容的对象或对象数组:type
- (必要) 扩展点事件名称。 可用的扩展点包括 request extension points 以及以下服务器扩展点:'onPreStart'
- 当连接监听器启动之前调用'onPostStart'
- 当连接监听器启动之后调用'onPreStop'
- 当连接监听器停止之前调用'onPostStop'
- 当连接监听器停止之后调用
method
- (必要的) 在请求处理期间在指定点执行的函数或函数数组。 所需的扩展功能签名是:server extension points:
async function(server)
其中:server
- server 对象this
- 通过options.bind
提供的对象或server.bind()
设置的当前活动的上下文。
request extension points: a lifecycle method .
options
- (可选) 具有以下内容的对象:before
-此方法之前必须执行的插件名称的字符串或数组(在同一事件上)。否则,扩展方法按添加的顺序执行。after
- 此方法必须在(在同一事件上)之后执行的插件名称字符串或字符串数组。 否则,扩展方法按添加的顺序执行。bind
- 一个上下文对象在被调用时传递回提供的方法(通过this
)。 如果方法是箭头函数,则忽略。sandbox
- 如果在添加 request extension points 时设置为“'plugin'”,则扩展仅添加到当前插件定义的路由中。 配置路由级扩展时不允许, 或添加服务器扩展时。 默认为'server'
适用于添加到服务器的任何路由,添加扩展名。timeout
- 返回超时错误之前等待method
完成的毫秒数。 默认为无超时。
返回值: none.
const Hapi = require('hapi'); async function example() { const server = Hapi.server({ port: 80 }); server.ext({ type: 'onRequest', method: function (request, h) { // Change all requests to '/test' request.setUrl('/test'); return h.continue; } }); server.route({ method: 'GET', path: '/test', handler: () => 'ok' }); await server.start(); // All requests will get routed to '/test' }
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论