Maz*_*zzy 7 javascript plugins hapijs
由于几个原因,我正在接近node.js的这个框架.简单,出色的模块化和开箱即用的快速配置.我很快就遇到了Pack的概念,这是我在学习express.js框架的过程中从未见过的.从官方指南中可以看出以下示例:
var Good = require('good');
server.pack.register(Good, function (err) {
if (err) {
throw err; // something bad happened loading the plugin
}
server.start(function () {
server.log('info', 'Server running at: ' + server.info.uri);
});
});
Run Code Online (Sandbox Code Playgroud)
他们说包装:
包是hapi将多个服务器组合到一个单元中的一种方式,用于在使用插件时提供统一的界面.
这个概念对我来说很奇怪.我们在项目中使用不同服务器的次数是多少次?另外我不清楚我是否应该每次调用打包在hapi中插件.
更新:这是v8之前的api代码,注册插件的方式已经改变.(register直接打电话server)
这个概念对我来说很奇怪。我们在一个项目中使用不同的服务器有多少次?
一个例子是当您有一个 API 和一个 Web 服务器时。这些通常是单独开发的,通常在单独的存储库中。然后,您可以创建结合这些插件的第三个项目:
var Hapi = require('hapi');
var manifest = {
servers: [
{
host: 'localhost',
port: 8000,
options: {
labels: 'api',
cors: true
}
},
{
host: 'localhost',
port: 8001,
options: {
labels: 'web'
}
}
],
plugins: {
'./example-api': [{select: 'api'}],
'./example-web': [{select: 'web'}]
}
};
Hapi.Pack.compose(manifest, function(err, pack) {
pack.start();
});
Run Code Online (Sandbox Code Playgroud)
另外我不清楚我是否应该调用ever time pack在hapi中注册插件。
pack.register()是的,当你想注册插件时,你需要调用。但是您可以一次注册更多插件:
plugin.register([
require('crumb'),
require('hapi-auth-cookie')
], function (err) {
// Error handling
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3233 次 |
| 最近记录: |