2016-08-27 3 views
0
erlaubt
module.exports.login = function (request, response, next) { 
if (request.body.user && request.body.password) { 
    response.end('submitted'); 
} else { 
    common.render('login', function (error, file) { 
     if (error) { 
      next(error); 
     } else { 
      response.writeHead(200, 'OK', { 'Content-Type': 'text/html' }); 
      var stream = fs.createReadStream(file); 
      stream.pipe(response); 
     } 
    }); 
} 
}; 

I connect mit body-parser verwenden. Wenn ich diese App zum ersten Mal öffne, sehe ich das Anmeldeformular - nett, aber wenn ich ein Formular abschicke, sehe ich in einer Konsole 405 Methode nicht erlaubt Fehler. Ich habe versucht, einige Header hinzuzufügen, aber es hat nicht funktioniert. Jeder kann helfen?NodeJS Methode nicht

+0

Können Sie Ihren express.js-Routencode posten? Wo haben Sie die URL-Mappings eingerichtet? – rdegges

+0

Übermitteln Sie das Formular auch per Standardformular oder machen Sie eine AJAX-Anfrage? –

+0

Ich benutze 'express' nur' connect'. Ich übermittle über Standardverhalten. – Mati

Antwort

0

Ich glaube, die Syntax sein sollte:

module.exports = function(request, response, next) { 
if (request.body.user && request.body.password) { 
    response.end('submitted'); 
} else { 
    common.render('login', function (error, file) { 
     if (error) { 
      next(error); 
     } else { 
      response.writeHead(200, 'OK', { 'Content-Type': 'text/html' }); 
      var stream = fs.createReadStream(file); 
      stream.pipe(response); 
     } 
    }); 
} 
}; 

oder

function login(request, response, next) { 
if (request.body.user && request.body.password) { 
    response.end('submitted'); 
} else { 
    common.render('login', function (error, file) { 
     if (error) { 
      next(error); 
     } else { 
      response.writeHead(200, 'OK', { 'Content-Type': 'text/html' }); 
      var stream = fs.createReadStream(file); 
      stream.pipe(response); 
     } 
    }); 
} 
}; 
module.exports = login; 
0

ich es endlich gelöst. Das Problem war serve-static und serve-index. Es wurde einige zusätzliche Header wie erlaubte Methoden geschrieben!