AJAX容易出错地方,错误处理
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.get接口请求登录
router.get("/login_post",(req,res)=>{
var $uname=req.query.uname;
var $upwd=req.query.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("用户名或密码错误");
};
});
});
//导出路由器对象
module.exports=router;
login_get_ajax.html
<body>
<input type="text" id="uname" >
<br><br>
<input type="text" id="upwd">
<br><br>
<button onclick="login()">登录</button>
<script>
function login(){
var u_uname=uname.value;
var u_upwd=upwd.value;
var xhr=new XMLHttpRequest();
xhr.onreadystatechange=function(){
if(xhr.readyState==4&&xhr.status==200){
var result=xhr.responseText;
alert(result);
};
};
var url="http://127.0.0.1:8080/ajax/login_post?uname="+u_uname+"&upwd="+u_upwd;
xhr.open("get",url,true);
xhr.send();
};
</script>
</body>
AJAX容易出错地方,错误处理的更多相关文章
- Spring Security登录超时,angular ajax请求出错自动跳转至登录页(jQuery也适用)
公司开发采用Spring Security+AngualerJS框架,在session过期之后,ajax请求会直接出错.本文介绍如何实现出错情况下自动跳转至登录页. 整体思路是,session过期后, ...
- mac下,mysql5.7.18连接出错,错误信息为:Access denied for user 'root'@'localhost' (using password: YES)
mac下,mysql5.7.18连接出错,错误信息为:Access denied for user 'root'@'localhost' (using password: YES)()里面的为shel ...
- ajax请求出现400错误
ajax请求出现400错误,如题.百度了只有两种情况,一个参数错误,二是所谓的参数过长. 因为我传递的base64的图片参数,很长.刚开始以为是这个原因.后来发现不是,原因是参数错误.freemake ...
- SpringMVC的AJAX请求报406错误
SpringMVC的AJAX请求报406错误原因有两种:1.jackson包没有引入 2.如果已经引入jackson包了还报406的错误,那么就有可能是请求的url路径是.html结尾,但是返回的数据 ...
- TP5 ajax请求报500错误
场景:几个站点从阿里云迁移到腾讯云,然后 TP5项目 ajax请求报500错误 数据返回成功,但是http状态码是500,不走success,一直走error 如下图: 原因分析: 服务器centos ...
- PHP 中使用ajax时一些常见错误总结整理
这篇文章主要介绍了PHP 中使用ajax时一些常见错误总结整理的相关资料,需要的朋友可以参考下 PHP作为后端时,前端js使用ajax技术进行相互信息传送时,经常会出错误,对于新手来说有些手足无措.总 ...
- Jquery Ajax简单封装(集中错误、请求loading处理)
Jquery Ajax简单封装(集中错误.请求loading处理) 对Jquery Ajax做了简单封装,错误处理,请求loading等,运用到项目中集中处理会很方便. 技术层面没有什么好说的,请求是 ...
- 【ABAP系列】SAP webservice HTTP框架出错 404错误
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP webservice H ...
- ajax中的stasus错误详解
一.英文版解析 0: (Uninitialized) the send( ) method has not yet been invoked. 1: (Loading) the send( ) met ...
- ajax请求报语法错误
今天改代码修正完一个ajax请求后,调试发现出错进error方法,查看错误信息报语法错误,具体是调用parseJSON方法时出错,因为我是用json方式传递的参数,所以第一时间查看data参数是否正确 ...
随机推荐
- TCP 序列号和确认号是如何变化的?
大家好,我是小林. 在网站上回答了很多人的问题,我发现很多人对 TCP 序列号和确认号的变化都是懵懵懂懂的,只知道三次握手和四次挥手过程中,ACK 报文中确认号要 +1,然后数据传输中 TCP 序列号 ...
- 题解 P3395 路障
前言 没想到这是\(\sf {tgD1T1}\)难度-- 题目大意 有一个\(n\times n\) 的棋盘,有\(2n-2\) 个路障,在第\(i\) 秒会在\((x_i,y_i)\) 放置路障.求 ...
- .NET性能优化-是时候换个序列化协议了
计算机单机性能一直受到摩尔定律的约束,随着移动互联网的兴趣,单机性能不足的瓶颈越来越明显,制约着整个行业的发展.不过我们虽然不能无止境的纵向扩容系统,但是我们可以分布式.横向的扩容系统,这听起来非常的 ...
- ThreadLocal的介绍与运用
ThreadLocal全面解析 学习目标 了解ThreadLocal的介绍 掌握ThreadLocal的运用场景 了解ThreadLocal的内部结构 了解ThreadLocal的核心方法源码 了解T ...
- 关于.Net和Java的看法-一个小实习生经历
目录 背景 带着疑惑 生活中的迷茫 开始实训 实习 再看java 总结 背景 笔者是一个专科院校的一名普通学生,目前就职于某三线城市的WEB方面.Net开发实习生,在找实习期间和就业期间的一些看法,发 ...
- Redis管理及监控工具推荐
推荐一款Redis管理软件.[官网 http://www.redisant.cn/] 功能描述: 1. 键和字段CRUD和glob. 2. 适用于字符串.列表.散列.集合.有序集合. 通过漂亮的用户界 ...
- 强软弱引用,ThreadLocal和内存泄漏
强引用 写法:Object obj=new Object() 引用强度:最强 只要被引用着,就不会被gc(垃圾回收)回收掉. 软引用 写法:SoftReference<String> sr ...
- Revit2021保姆级安装教程
Revit2021 WIN10 64位安装步骤: 1.先使用"百度网盘客户端"下载Revit_2021软件安装包到电脑磁盘里,并解压缩,安装全程需连接网络,然后双击打开Revit_ ...
- Vue2基本组件间通信
Vue2组件通信的基础方式 自己的理解:组件化通信,无非就是数据你传我,我传你,两个组件的相互交流,方法很多,下方有图示(此篇建议小白阅读,大神的话也不会看,哈哈哈哈!仅供参考,有不同的意见可以一起交 ...
- EASE-Grid经纬度与行列号转换公式 以 25KM的HDF数据为例
/// <summary> /// 把经纬度转换成行列号 /// </summary> /// <param name="pLng"></ ...