【发布时间】:2017-02-12 00:12:58
【问题描述】:
考虑以下来自 express 应用的代码:
var express = require('express');
var router = express.Router();
var standupCtrl = require('../controllers/standup.server.controller');
/* GET home page. */
router.get('/', function(req, res) {
return standupCtrl.list(req, res);
});
/* POST filter by member name - home page. */
router.post('/', function(req, res) {
return standupCtrl.filterByMember(req, res);
});
// ............ more code here
module.exports = router;
exports.list = function(req, res) {
var query = Standup.find();
query.sort({ createdOn: 'desc'}).limit(12).exec(function(err, results){
res.render('index', {title: 'Standup - List', notes: results});
});
};
exports.filterByMember = function(req, res) {
var query = Standup.find();
var filter = req.body.memberName;
query.sort({ createdOn: 'desc' });
if (filter.length > 0)
{
query.where({ memberName: filter})
}
query.exec(function(err, results) {
res.render('index', { title: 'Standup - List', notes: results });
});
};
我知道在提交表单时你可以指定一个
方法 = 获取/发布
对于这种情况(没有指定任何内容),当用户导航到“/”(例如主页)时,服务器如何知道要触发(发布或获取)哪个?
更一般地说,我的问题是:
哪些事件会触发 Post/Get 操作(如果未明确指定)?
(PS:我知道在浏览器的地址栏中输入任何内容都会触发 GET 请求)
提前非常感谢!
【问题讨论】:
标签: javascript ajax http express routes