get-login-ajax.html
---------------------------------------------
<body>
<input type="text" id="uname" >
<br><br>
<input type="text" id="upwd">
<br><br>
<button onclick="login()">登錄</button>
<script>
function login(){
//1 dom接收數據
var u_uname=uname.value;
var u_upwd=upwd.value;
//2.ajax 異步連接服務器
//2.1創建異步對象
var xhr=new XMLHttpRequest();
//2.4創建監聽,獲取響應數據
xhr.onreadystatechange=function(){
if(xhr.readyState==4&&xhr.status==200){
var result=xhr.responseText;
alert(result);
}
};
//2.2打開連接創建請求
var url="http://127.0.0.1:8080/ajax/login_get?uname="+u_uname+"&upwd="+u_upwd;
xhr.open("get",url,true);
//2.3 發送請求
xhr.send();
};
</script>
</body>
----------------------------------------------------------------
router---myajax.js
---------
//創建路由器對象
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;