ajax 用 get方法 验证登录
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方法 验证登录的更多相关文章
- ajax的使用:(ajaxReturn[ajax的返回方法]),(eval返回字符串);分页;第三方类(page.class.php)如何载入;自动加载函数库(functions);session如何防止跳过登录访问(构造函数说明)
一.ajax例子:ajaxReturn("ok","eval")->thinkphp中ajax的返回值的方法,返回参数为ok,返回类型为eval(字符串) ...
- WPF:验证登录后关闭登录窗口,显示主窗口的解决方法
http://www.27ba.com/post/145.html WPF:验证登录后关闭登录窗口,显示主窗口的解决方法 最近想做一个基于Socket的通讯工具,想模仿QQ那样,需要先登录,登录成功后 ...
- 一步一步实现FormsAuthentic验证登录
本文不讲原理,只讲用法,原理性的东西网上特别多,不过还是会对一些要用到的东西进行解释,不深入讲原理.本文中用的是Vs2012 .net mvc 4.0.原理看这篇文章,看完这个文章绝对受益匪浅. ...
- 验证控件,解决用于ajax提交前的验证,不是submit提交的验证
//解决ajax提交前的验证问题,主要用于onclick事件时对某一区域中(可以是form,div,table中的等)控件的验证.(function ($) { var v; //Create a n ...
- JAVA短信验证登录
短信验证登陆 1.点击触发,以电话号码为参数调用发送验证登录短信方法 2.默认模板为验证模板 生成6位验证码 3.将生成的验证码和手机号码放入缓存,(已经设置好缓存存放时间) 4.调用发送模板短信方法 ...
- Scrapy中使用cookie免于验证登录和模拟登录
Scrapy中使用cookie免于验证登录和模拟登录 引言 python爬虫我认为最困难的问题一个是ip代理,另外一个就是模拟登录了,更操蛋的就是模拟登录了之后还有验证码,真的是不让人省心,不过既然有 ...
- Ajax+Struts2实现验证码验证功能
---------------------------------------------------------------------------------------------------- ...
- Ajax 与服务器通信 验证编号重复
在最近的一个Web项目中,需要实现一个功能,就是用户在前端输入一个编号,后台需要验证这个编号是否在数据库中已经存在,如果存在就提示用户. 主要用到两个模块.第一:在jsp中添加一个脚本,利用ajax向 ...
- 从壹开始前后端分离 [ Vue2.0+.NET Core2.1] 二十四║ Vuex + JWT 实现授权验证登录
壹周回顾 哈喽,又是元气满满的一个周一,又与大家见面了,周末就是团圆节了,正好咱们的前后端也要团圆了,为什么这么说呢,因为以后的开发可能就需要前后端一起了,两边也终于会师了,还有几天Vue系列就基本告 ...
- JSP+MySQL验证登录的实现方式
用IDEA连接MySQL验证登录实现方式核心部分代码 用setString的方法对从数据库中的提取的信息经行比对: try { Class.forName("com.mysql.jdbc.D ...
随机推荐
- Go | 基本数据类型的相互转换
基本数据类型的相互转换 Go在不同类型的变量之间赋值时需要显示转换,不能自动转换 基本语法 表达式 T(v): 将值v转换成类型T T就是数据类型: int32, int64, float32... ...
- Linux软件安装方式 - Tarball&RPM&YUM
软件安装 简介 概念详解 # 概念详解 - 开放源码: 程序码, 写给人类看的程序语言, 但机器并不认识, 所以无法执行; - 编译器: 将程序码转译成为机器看的懂得语言, 就类似翻译者的角色; - ...
- JS学习笔记 (三) 对象进阶
1.JS对象 1.1 JS对象特征 1.JS对象是基本数据数据类型之一,是一种复合值,可以看成若干属性的集合. 属性是名值对的形式(key:value) 属性名是字符串,因此可以把对象看成是字符串到值 ...
- 秀++视频算法仓库-厂家对接规约V5
一.概要 (1)每个算法厂家在秀++云平台上会有一个厂商标识,譬如CS101:算法厂家可能有多个算法引擎,每个引擎有一个标识譬如Q101,引擎可以理解为一个可执行程序,可以同时分析多路算法:每个算法在 ...
- MongoDB - 入门指南
组件结构 核心进程 在 MongoDB 中,核心进程主要包含了 mongod.mongos 和 mongosh 三个. 其中最主要的是 mongod 程序,其在不同的部署方案中(单机部署.副本集部署. ...
- Centos7 mysql网络源安装范例(其他系统也可参考)
1. 以下是一个通配的el7系列的yum源,可适应aarch64,x86_64,i386内核,但是可能会慢一点 # cat > /etc/yum.repos.d/mysql-community. ...
- Android Studio运行Failed to find Build Tools revision 30.0.3
问题 第一次安装好Android Studio2022.5的版本之后开启虚拟机运行文件报错提示 Failed to find Build Tools revision 30.0.3 打开SDK已经安装 ...
- 第三方模块的下载与使用、requests模块、爬取链家二手房数据、openpyxl模块、hashlib加密模块
目录 第三方模块的下载与使用 下载第三方模块可能会出现的问题 网络爬虫模块之requests模块 网络爬虫实战之爬取链家二手房数据 自动化办公领域之openpyxl模块 第三方模块的下载与使用 第三方 ...
- Duplicate property mapping of xxx found in xx 嵌套异常,重复的属性在映射中发现。
该异常的原意是因为在映射文件中出现了两个一样的属性名: <property name="相同的属性名出现了两次以上" > <property name=" ...
- 【Hadoop面试】基础概念、HDFS、MapReduce、Yarn、实战
一.Hadoop概念及架构 1.是否看过Hadoop源码 2.正常工作的hadoop集群中hadoop都分别需要启动哪些进程,他们的作用分别是什么 3.hadoop和spark中的文件缓存方式 4.h ...