2015-04-08 10 views
5

Sto solo cominciando a imparare Hapijs segue iniziare esercitazione con questo esempio:Hapijs come iniziare bene bene-console degli errori giornalista deve specificare gli eventi da filtrare

var Hapi = require('hapi'); 
var Good = require('good'); 

var server = new Hapi.Server(); 
server.connection({ port: 3000 }); 

server.route({ 
    method: 'GET', 
    path: '/', 
    handler: function (request, reply) { 
     reply('Hello, world!'); 
    } 
}); 

server.route({ 
    method: 'GET', 
    path: '/{name}', 
    handler: function (request, reply) { 
     reply('Hello, ' + encodeURIComponent(request.params.name) + '!'); 
    } 
}); 

server.register({ 
    register: Good, 
    options: { 
     reporters: [{ 
      reporter: require('good-console'), 
      args:[{ log: '*', response: '*' }] 
     }] 
    } 
}, function (err) { 
    if (err) { 
     throw err; // something bad happened loading the plugin 
    } 

    server.start(function() { 
     server.log('info', 'Server running at: ' + server.info.uri); 
    }); 
}); 

quando corro

node server 

ho avuto

/home/user/hapi/node_modules/good/node_modules/hoek/lib/index.js:683 
    throw new Error(msgs.join(' ') || 'Unknown error'); 
     ^
Error: reporter must specify events to filter on 

Posso yo mi aiuti, per favore?

risposta

10

La documentazione non è aggiornata. C'erano alcuni breaking changes nella buona 6.0.0. Il modulo good-console ha una nuova versione, tuttavia non è ancora stato pubblicato su npm. È possibile utilizzare il ramo maestro anche se specificando il repository GitHub in package.json:

"good-console": "hapijs/good-console" 

Sarà inoltre necessario modificare la configurazione per:

options: { 
    reporters: [{ 
     reporter: require('good-console'), 
     events: { 
      response: '*', 
      log: '*' 
     } 
    }] 
} 

EDIT: versione 5.0.0 di buona console è stata rilasciata. Anche la documentazione è stata aggiornata.

+0

Errore: ogni oggetto reporter deve avere un metodo init. come scrivere un metodo di init? –

+2

@blackstar Stai usando la buona versione della console 5.0.0? Solo quella versione è compatibile con la buona 6.0.0. –

Problemi correlati