2016-06-07 47 views
0

高致病性禽流感,招搖插件我是新來的Node.js開發。我只是使用Hapi.js和Swagger插件來構建REST API以用於學習目的。錯誤登記在node.js中

但是,儘管node.js的註冊高致病性禽流感,招搖的插件,它給依賴的一些錯誤。

下面是我的代碼:在連接插件高致病性禽流感,招搖丟失的依賴惰性:

'use strict'; 

const Hapi = require('hapi'); 
const inert = require('inert'); 


    //creating server 
    const server = new Hapi.Server(); 

    //connecting 
    server.connection({ 
    port:3000, 
    host:'localhost' 
    } 
); 


//registering the swagger plugin (use for documentation and testing  purpose 
server.register({ 
    register:require('hapi-swagger'), 
    }, 
    function(err) 
    { 
    if(err) 
     server.log(['error'],'hapi-swagger load error:'+err) 
    else 
     server.log(['start'],'hapi-swagger interface loaded'); 
} 
); 

錯誤顯示爲:

/media/Tech/swagger_api/app.js:69 throw err; ^

錯誤在internals.Server._createCache.internals http://localhost:3000 。 Server.start.internals.Server.initialize.Items.parallel [如初始化](/media/Tech/swagger_api/node_modules/hapi/lib/server.js:226:49) 在internals.Server._createCache.internals.Server .start.Items.serial [as s撻(/media/Tech/swagger_api/node_modules/hapi/lib/server.js:182:10) 在對象。 (/media/Tech/swagger_api/app.js:67:8) at Module._compile(module.js:409:26) at Object.Module._extensions..js(module.js:416:10) 在Module.load(module.js:343:32) 在Function.Module._load(module.js:300:12) 在Function.Module.runMain(module.js:441:10) 在啓動時(節點.js:139:18) at node.js:968:3

+0

難道我的答案的工作? –

回答

3

您需要爲hapi-swagger插件註冊惰性和視覺才能工作,請參閱此line顯示它是依賴項。這是註冊插件的一個片段,它已從項目自述文件中獲取。

const Hapi = require('hapi'); 
const Inert = require('inert'); 
const Vision = require('vision'); 
const HapiSwagger = require('hapi-swagger'); 
const Pack = require('./package'); 

const server = new Hapi.Server(); 
server.connection({ 
    host: 'localhost', 
    port: 3000 
}); 

const options = { 
    info: { 
     'title': 'Test API Documentation', 
     'version': Pack.version, 
    } 
}; 

server.register([ 
    Inert, 
    Vision, 
    { 
     'register': HapiSwagger, 
     'options': options 
}], (err) => { 
    server.start((err) => { 
     if (err) { 
      console.log(err); 
     } else { 
      console.log('Server running at:', server.info.uri); 
     } 
    }); 
}); 

server.route(Routes);