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;

ajax 用 get方法 验证登录的更多相关文章

  1. ajax的使用:(ajaxReturn[ajax的返回方法]),(eval返回字符串);分页;第三方类(page.class.php)如何载入;自动加载函数库(functions);session如何防止跳过登录访问(构造函数说明)

    一.ajax例子:ajaxReturn("ok","eval")->thinkphp中ajax的返回值的方法,返回参数为ok,返回类型为eval(字符串) ...

  2. WPF:验证登录后关闭登录窗口,显示主窗口的解决方法

    http://www.27ba.com/post/145.html WPF:验证登录后关闭登录窗口,显示主窗口的解决方法 最近想做一个基于Socket的通讯工具,想模仿QQ那样,需要先登录,登录成功后 ...

  3. 一步一步实现FormsAuthentic验证登录

    本文不讲原理,只讲用法,原理性的东西网上特别多,不过还是会对一些要用到的东西进行解释,不深入讲原理.本文中用的是Vs2012   .net mvc 4.0.原理看这篇文章,看完这个文章绝对受益匪浅. ...

  4. 验证控件,解决用于ajax提交前的验证,不是submit提交的验证

    //解决ajax提交前的验证问题,主要用于onclick事件时对某一区域中(可以是form,div,table中的等)控件的验证.(function ($) { var v; //Create a n ...

  5. JAVA短信验证登录

    短信验证登陆 1.点击触发,以电话号码为参数调用发送验证登录短信方法 2.默认模板为验证模板 生成6位验证码 3.将生成的验证码和手机号码放入缓存,(已经设置好缓存存放时间) 4.调用发送模板短信方法 ...

  6. Scrapy中使用cookie免于验证登录和模拟登录

    Scrapy中使用cookie免于验证登录和模拟登录 引言 python爬虫我认为最困难的问题一个是ip代理,另外一个就是模拟登录了,更操蛋的就是模拟登录了之后还有验证码,真的是不让人省心,不过既然有 ...

  7. Ajax+Struts2实现验证码验证功能

    ---------------------------------------------------------------------------------------------------- ...

  8. Ajax 与服务器通信 验证编号重复

    在最近的一个Web项目中,需要实现一个功能,就是用户在前端输入一个编号,后台需要验证这个编号是否在数据库中已经存在,如果存在就提示用户. 主要用到两个模块.第一:在jsp中添加一个脚本,利用ajax向 ...

  9. 从壹开始前后端分离 [ Vue2.0+.NET Core2.1] 二十四║ Vuex + JWT 实现授权验证登录

    壹周回顾 哈喽,又是元气满满的一个周一,又与大家见面了,周末就是团圆节了,正好咱们的前后端也要团圆了,为什么这么说呢,因为以后的开发可能就需要前后端一起了,两边也终于会师了,还有几天Vue系列就基本告 ...

  10. JSP+MySQL验证登录的实现方式

    用IDEA连接MySQL验证登录实现方式核心部分代码 用setString的方法对从数据库中的提取的信息经行比对: try { Class.forName("com.mysql.jdbc.D ...

随机推荐

  1. 小菜鸡学习---<正则表达式学习笔记2>

    正则表达式学习笔记2 一.修饰符 前面我们学习的都是用于匹配的基本的关键的一些表达式符号,现在我们来学习修饰符.修饰符不写在正则表达式里,修饰符位于表达式之外,比如/runoob/g,这个最后的g就是 ...

  2. 线上Electron应用具备哪些特征?

    新用户购买<Electron + Vue 3 桌面应用开发>,加小册专属微信群,参与群抽奖,送<深入浅出Electron>.<Electron实战>作者签名版. 1 ...

  3. JUC学习笔记——进程与线程

    JUC学习笔记--进程与线程 在本系列内容中我们会对JUC做一个系统的学习,本片将会介绍JUC的进程与线程部分 我们会分为以下几部分进行介绍: 进程与线程 并发与并行 同步与异步 线程详解 进程与线程 ...

  4. 【项目】AtCoder for Chinese

    前排提示:Github 内容搭配梯子食用效果更佳( 项目地址 网页 插件安装 Join us or Give us a star ! 注:因内容迁移,下列链接暂时失效(用空再搬一遍)qwq Trans ...

  5. MessagePack 和System.Text.Json 序列号 反序列化对比

    本博客将测试MessagePack 和System.Text.Json 序列号 反序列化性能 项目文件: Program.cs代码: using BenchmarkDotNet.Running; us ...

  6. VMware ESXi 8.0 SLIC 2.6 & macOS Unlocker (Oct 2022 GA)

    ESXi 8.0.0 GA (General Availability) 请访问原文 VMware ESXi 8.0 SLIC 2.6 & macOS Unlocker (Oct 2022 G ...

  7. 基于 MQ 的分布式 Serverless 多租任务处理系统架构演进

    本文作者:史明伟 , 阿里云智能高级技术专家. 1 Serverless 异步任务处理系统诞生和挑战 无论是对于云的开发者,还是尝试业务升级的企业客户,Serverless的三个概念 "极致 ...

  8. Pycharm下载与使用及python的基础数据类型

    1.Pycharm编辑器 1.1.下载地址 https://www.jetbrains.com/pycharm/ 1.2.Pycharm编辑器下载 1.根据自己的操作系统选择相对应的下载方式 2.尽量 ...

  9. 说一下 ArrayList 和 LinkedList 的区别?

    本文已收录到 AndroidFamily,技术和职场问题,请关注公众号 [彭旭锐] 提问. 前言 大家好,我是小彭. 在上一篇文章里,我们聊到了基于动态数组 ArrayList 线性表,今天我们来讨论 ...

  10. (GDB) GDB调试技巧,调试命令

    调试时查看依赖DSO pidof tvm_rpc_server cat /proc/<pid_of_tvm_rpc_server>/maps 子进程调试 1.vscode -- launc ...