路由器设置里边易错点

//创建路由器对象

const express=require('express');

//引入连接池模块

const pool=require('../pool.js');

//创建路由器对象

var router=express.Router();

//测试服务器接收ajax请求的接口

router.get("/ajaxDemo",(req,res)=>{

console.log(111);

res.send("第一个程序");

});

//2.测试带参数的get请求

router.get("/ajaxDemo1",(req,res)=>{

var $uname=req.query.uname;

var $upwd=req.query.upwd;

if(!$uname){

res.send("用户名没有接收到");

return;

}

if(!$upwd){

res.send("密码没有接收到");

return;

}

res.send("用户名为"+$uname+"密码为"+$upwd);

});

//3.get请求登录接口(应该用Post)

//http://127.0.0.1:8080/ajax/login_get?uname=yaya&upwd=123456

router.get("/login_get",(req,res)=>{

//获取请求中的数据

var $uname=req.query.uname;

var $upwd=req.query.upwd;

//验证数据正确的得到

if(!$uname){

res.send("没有获取到用户名称");

retrun;

};

if(!$upwd){

res.send("没有获取到用户密码");

return;

};

//使用连接池访问数据库

var sql="select * from xz_user where uname=? and upwd= ?";

pool.query(sql,[$uname,$upwd],(err,result)=>{

if(err){throw err };

if(result.length>0){

res.send("登录成功");

}else{

res.send("用户名或者密码错误");

};

});

});

//4.post接口请求登录

 

const bodyParser=require('body-parser');

//使用body-parser中间件,将post请求的数据格式化为对象;

router.use(bodyParser.urlencoded({

extended:false

}))

router.post("/login_post",(req,res)=>{

var $uname=req.body.uname;

var $upwd=req.body.upwd;

if(!$uname){

res.send("用户名不能为空");

return;

};

if($upwd==""){

res.send("密码不可以为空");

return;

};

var sql="select * from xz_user where uname=? and upwd=?";

pool.query(sql,[$uname,$upwd],(err,result)=>{

if(err) {throw err};

if(result.length>0){

res.send("登录成功");

}else{

res.send("用户名或密码错误");

};

});

});

//5.使用get获取用户列表

router.get('/userlist',(req,res)=>{

pool.query('select * from xz_user',(err,result)=>{

if(err){ throw err};

res.send(result);

});

});

//导出路由器对象

module.exports=router;

posted @   糖~豆豆  阅读(363)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
Live2D
欢迎阅读『路由器设置里边易错点』
点击右上角即可分享
微信分享提示