app.post()无法与Express一起使用 [英] app.post() not working with Express
本文介绍了app.post()无法与Express一起使用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我遇到了Express的问题,我尝试使用app.post()函数,但是它不起作用,我也不知道为什么...
I get a problem with Express, I try to use the app.post() function but it's not working and I don't know why...
尽管我包括了bodyParser()...
Though I included the bodyParser()...
问题:页面加载无响应,没有错误消息.我没有看到console.log()...
The problem: Page load without response, no error message. I don't see the console.log()...
app.js:
var express = require('express')
, routes = require('./routes')
, user = require('./routes/user')
, postProvider = require('./postProvider.js')
, http = require('http')
, path = require('path')
, compass = require('node-compass')
, hash = require('./auth').hash;
var app = express();
app.configure(function () {
app.set('port', process.env.PORT || 3000);
app.set('views', __dirname + '/views');
app.set('view engine', 'jade');
app.use(compass());
app.use(express.favicon());
app.use(express.logger('dev'));
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(app.router);
app.use(express.static(path.join(__dirname, 'public')));
app.use(express.cookieParser('dsqdq edsds'));
app.use(express.session());
});
app.configure('development', function () {
app.use(express.errorHandler());
});
app.get('/admin', function(req, res){
res.redirect('login');
});
app.get('/login', function(req, res){
res.render('login');
});
app.post('/login', function(req, res){
console.log('test');
});
app.get('/', routes.index);
http.createServer(app).listen(app.get('port'), function () {
console.log("Express server listening on port " + app.get('port'));
});
login.jade:
login.jade :
extends layout
block content
h1 Login
h3 "tj" and "foobar"
form(method="post", action="/login")
input(type="text", placeholder="Username", autofocus="true", name="username")
br
input(type="password", placeholder="Password", name="password")
br
input(type="submit", value="login")
推荐答案
app.post代码未发现任何问题!
I don't find any issue with app.post code !!
app.post('/login', function(req, res){
console.log('test');
res.end(); // end the response
});
一个建议是,您应该结束每个发送给客户端的响应,否则您的服务器将无响应.
One suggestion is that you should end each response send to client , otherwise your server become unresponsive.
这篇关于app.post()无法与Express一起使用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文