2014-07-11 21 views
8

Dość nowy dla nodejs tutaj. Mam serwer sieciowy nodejs, który obsługuje dane przez ajax. Teraz muszę rozszerzyć serwer, aby odpowiadał na różne żądania postów. Wszystko, co próbuję uruchomić, to oprogramowanie pośredniczące bodyParser, ale na innym komputerze programistycznym.Błąd połączenia NodeJS - nie ma metody "rejestrator"

os: debian nodejs: v0.10.29

skończył "npm zainstalować connect" jako zwykły użytkownik i korzeń kodu

var http = require('http'); 
var connect = require('connect'); 

var app = connect() 
    .use(connect.logger('dev')) 
    .use(connect.static('public')) 
    .use(connect.bodyParser()) 
    .use(function(req, res){ 
    res.end(JSON.stringify(req.body)); 
    }) 

http.createServer(app).listen(2081); 

coraz to wyjście Carl @ CrunchBang: ~/nodedev $ węzeł ./test.js

/home/carl/nodedev/test.js:5 
    .use(connect.logger('dev')) 
      ^
TypeError: Object function createServer() { 
    function app(req, res, next){ app.handle(req, res, next); } 
    merge(app, proto); 
    merge(app, EventEmitter.prototype); 
    app.route = '/'; 
    app.stack = []; 
    return app; 
} has no method 'logger' 
    at Object.<anonymous> (/home/carl/nodedev/test.js:5:16) 
    at Module._compile (module.js:456:26) 
    at Object.Module._extensions..js (module.js:474:10) 
    at Module.load (module.js:356:32) 
    at Function.Module._load (module.js:312:12) 
    at Function.Module.runMain (module.js:497:10) 
    at startup (node.js:119:16) 
    at node.js:906:3 

Wiem, że brakowało mi czegoś naprawdę prostego, jakakolwiek doceniona pomoc.

Odpowiedz

14

Connect nie jest już dostarczany z dołączonym oprogramowaniem pośredniczącym. Twój kod będzie wyglądał mniej więcej z dołączonym oprogramowaniem pośredniczącym.

var http = require('http'); 
var connect = require('connect'); 
var bodyParser = require('body-parser'); 
var logger = require('morgan'); 

var app = connect() 
    .use(logger()) 
    .use(connect.static('public')) 
    .use(bodyParser.urlencoded({ 
     extended: true 
    })) 
    .use(bodyParser.json()) 
    .use(function(req, res){ 
    res.end(JSON.stringify(req.body)); 
    }) 

http.createServer(app).listen(2081); 
+0

dziękuję :) Konfiguracja serwera produkcyjnego miesiąc temu wygląda tak, jak się zmieniła. Dzięki stosy! – Carlhako

3

Jak widać w dokumentacji: https://www.npmjs.org/package/connect

Morgan - wcześniej rejestrator

Teraz trzeba użyć Morgan.

+0

Patrzyłem na stronę sencha http://www.senchalabs.org/connect/, która wciąż odnosi się do rejestratora. Dzięki za wskazówkę – Carlhako

Powiązane problemy