nodejs router.get怎么在里面调用方法
1个回答
展开全部
做过web开发的朋友对get和post 的请求的区别肯定十分了解,我就不多讲述了。
下面主要介绍一下get和post请求在node中使用的不同
场景就是单纯大登录操作:传递两个参数用户名和密码
get请求:
前台:
function login() {
var name = $('#name').val();
var password = $('#password').val();
if (!name || !password) {
alert('用户名和密码都不能为空');
return;
}
$.ajax(
{
type: 'get',
url: '/login',
data: {
name: name,
password: password
},
dataType: 'json',
success: function (data) {
if (data) {
}
},
error: function () {
alert('登录失败!');
return;
}
});
}
后台:
var express = require('express');
var router = express.Router();
router.get('/login', function (req, res, next) {
var name = req.query.name;
var pass = req.query.password;
console.log('name:' + name);
console.log('pass:' + pass);
if (name == 'sis' && pass == '1') {
res.send('1');
}
res.end('is over');
});
post请求:
前台:
function login() {
var name = $('#name').val();
var password = $('#password').val();
if (!name || !password) {
alert('用户名和密码都不能为空');
return;
}
$.ajax(
{
type: 'post',
url: '/login',
data: {
name: name,
password: password
},
dataType: 'json',
success: function (data) {
if (data) {
}
},
error: function () {
alert('登录失败!');
return;
}
});
}
后台:
var express = require('express');
var router = express.Router();
router.post('/login', function (req, res, next) {
var name = req.body.name;
var pass = req.body.password;
console.log('name:' + name);
console.log('pass:' + pass);
if (name == 'sis' && pass == '1') {
res.send('1');
}
res.end('is over');
});
从文章中可以明显看出get和post请求在node中区别,使用get请求时一定要使用get方法进行监听,并且获取传递过来的参数是要使用query,使用post请求时一定要使用post方法进行监听,同时获取数据是要使用body。至于为什么这样做我暂时不是很清楚,如果我搞清楚了会及时补充上去,欢迎大家补充。
顺带补充,还有一种方法传递参数给server,就是使用路径的方式,可以利用web server的http routing来解析,常见于各种web Framework。这不算是传统标准规范的做法,是属于htto routing的延伸使用
router.get('/login', function(req, res) {
console.log(req.params.name);
console.log(req.params.password);
});
下面主要介绍一下get和post请求在node中使用的不同
场景就是单纯大登录操作:传递两个参数用户名和密码
get请求:
前台:
function login() {
var name = $('#name').val();
var password = $('#password').val();
if (!name || !password) {
alert('用户名和密码都不能为空');
return;
}
$.ajax(
{
type: 'get',
url: '/login',
data: {
name: name,
password: password
},
dataType: 'json',
success: function (data) {
if (data) {
}
},
error: function () {
alert('登录失败!');
return;
}
});
}
后台:
var express = require('express');
var router = express.Router();
router.get('/login', function (req, res, next) {
var name = req.query.name;
var pass = req.query.password;
console.log('name:' + name);
console.log('pass:' + pass);
if (name == 'sis' && pass == '1') {
res.send('1');
}
res.end('is over');
});
post请求:
前台:
function login() {
var name = $('#name').val();
var password = $('#password').val();
if (!name || !password) {
alert('用户名和密码都不能为空');
return;
}
$.ajax(
{
type: 'post',
url: '/login',
data: {
name: name,
password: password
},
dataType: 'json',
success: function (data) {
if (data) {
}
},
error: function () {
alert('登录失败!');
return;
}
});
}
后台:
var express = require('express');
var router = express.Router();
router.post('/login', function (req, res, next) {
var name = req.body.name;
var pass = req.body.password;
console.log('name:' + name);
console.log('pass:' + pass);
if (name == 'sis' && pass == '1') {
res.send('1');
}
res.end('is over');
});
从文章中可以明显看出get和post请求在node中区别,使用get请求时一定要使用get方法进行监听,并且获取传递过来的参数是要使用query,使用post请求时一定要使用post方法进行监听,同时获取数据是要使用body。至于为什么这样做我暂时不是很清楚,如果我搞清楚了会及时补充上去,欢迎大家补充。
顺带补充,还有一种方法传递参数给server,就是使用路径的方式,可以利用web server的http routing来解析,常见于各种web Framework。这不算是传统标准规范的做法,是属于htto routing的延伸使用
router.get('/login', function(req, res) {
console.log(req.params.name);
console.log(req.params.password);
});
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询