ajax异步请求详解
1、XMLHttpRequst的出现才有了异步处理
2、创建XmlHttpRequest对象
var request=new XMLHttpRequest();
注意:如果要兼容IE6以下浏览器则需要编写如下代码
var request;
if(window.XMLRequest){
request=new XMLRequestHttpRequest(); //IE7、IE8、360等
}else{
request=new ActiveXObject("Microsoft.XMLHTTP");//IE5、IE6
}
3、XMLHttpRequest发送请求
(1)open(method,url,async),参数的意义如下
method:GET或者POST请求方法
url:相对地址或者绝对地址
async:true或者false,默认是true,表示异步
(2)send(String)
GET请求无参数,POST请求时一定要有参数
举例A:
request。open("GET",'getDate',true);
request.send();
举例B:
request.open("POST","getDate",true)
//默认是"application/x-www-from"-urlencoden"方式提交,如果是提交文件,则需要修改成为multipart/form-data方式提交
request.setRequestHeader("Content-type","application/x-www-from"-urlencoden");
request.send("name=王二&age=25");
4、XMLHttpRequest取得响应
(1)responseText:获得字符串形式的响应数据
(2)responseXML:获得xml形式的响应数据
(3)status和statusText:以数字和文本形式返回Http转态码
(4)getAllResponseHeader():获得所以得响应报头
(5)getResponseHeader():查询响应中的某个字段的值
(6)readState属性
"0"请求未初始化,open还未调用
"1":服务器连接已经建立,open已调用
"2":请求已接收,也就是接收到头信息了
"3":请求处理中,也就是接收到响应主体了
"4":请求已经完成,且响应就绪,响应完成了
举例:
var request;
request.open("GET","getDate",true);
request.send();
//监听返回的转态,200和4代表响应成功
request.onreadystatechange=fuction(){
if(request.readstate==4&&request.status==200){
//需要处理的事务
}
}
6、HTTP请求:是一种规则,无状态,无记忆
HTTP请求过程
(1)建立TCP连接
(2)web浏览器向web服务器发送请求指令
(3)web浏览器发送请求头信息
(4)web服务器应答
(5)web服务器发送应答头信息
(6)web服务器向浏览器发送数据
(7)web服务器关闭TCP连接
A、HTTP请求的4个·组成部分
a、HTTP请求方法或者动作(GET/POST)
b、正在请求的URL
c、请求头,包含客户环境信息、身份信息等
d、请求体(正文),包含客户提交的查询字符串信息、表单信息
B、POST和GET方法
GET:(1)用于信息获取
(2)使用URL传递参数
(3)String<=2000个字符左右
POST:(1)用于修改服务器上的资源
(2)String<=无穷大
C、一个HTTP响应由三个部分组成
a、一个数字和文字组成的转态码。作用:显示请求是否成功
b、响应头,包含服务器类型、日期、内容类型、长度等
c、响应体,即响应正文,字符串、HTML等
D、HTTP状态码由3个数字构成,其中首位数字定义了状态码的类型
1^^:信息类,表示收到web请求,正在进行处理中
2^^:成功,表示用户请求被正确接收、理解和处理,如200
3^^:重定向,表示请求未成功,客户必须采取动作
4^^:客户端错误,客户提交的信息有误,如400
found:意味着请求中所引用的文档不存在
5^^:服务器错误(最难处理的问题),表示服务器不能完成请求处理,如500
ajax异步请求详解的更多相关文章
- AJAX请求详解 同步异步 GET和POST
AJAX请求详解 同步异步 GET和POST 上一篇博文(http://www.cnblogs.com/mengdd/p/4191941.html)介绍了AJAX的概念和基本使用,附有一个小例子,下面 ...
- [转]JavaScript异步机制详解
原文: https://www.jianshu.com/p/4ea4ee713ead --------------------------------------------------------- ...
- MVC之Ajax.BeginForm使用详解之更新列表 mvc验证jquery.unobtrusive-ajax
MVC之Ajax.BeginForm使用详解之更新列表 1.首先,请在配置文件设置如下:(该项默认都存在且为true) <add key="UnobtrusiveJavaScrip ...
- $.ajax()所有参数详解
原文:https://www.cnblogs.com/everest33Tong/p/6159700.html [一]$.ajax()所有参数详解 url: 要求为String类型的参数,(默认为当前 ...
- ajax方法参数详解与$.each()和jquery里面each方法的区别
JQuery中$.ajax()方法参数详解 url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. type: 要求为String类型的参数,请求方式(post或get)默认为g ...
- JavaEE基础(03):Http请求详解,握手挥手流程简介
本文源码:GitHub·点这里 || GitEE·点这里 一.Http协议简介 1.概念说明 HTTP超文本传输协议,是用于从万维网服务器传输超文本到本地浏览器的传送协议,基于TCP/IP通信协议来传 ...
- 黑马eesy_15 Vue:03.生命周期与ajax异步请求
黑马eesy_15 Vue:02.常用语法 黑马eesy_15 Vue:03.生命周期 黑马eesy_15 Vue:04.Vue案例(ssm环境搭建) vue的生命周期与ajax异步请求 1.Vue的 ...
- ajax异步请求
做前端开发的朋友对于ajax异步更新一定印象深刻,作为刚入坑的小白,今天就和大家一起聊聊关于ajax异步请求的那点事.既然是ajax就少不了jQuery的知识,推荐大家访问www.w3school.c ...
- spring HandlerInterceptorAdapter拦截ajax异步请求,报错ERR_INCOMPLETE_CHUNKED_ENCODING
话不多说,直接上正文. 异常信息: Failed to load resource: net::ERR_INCOMPLETE_CHUNKED_ENCODING 问题描述: 该异常是在页面发送ajax请 ...
随机推荐
- OC-内存管理的一些要点
创建一个BOOK对象,对其属性进行声明 定义. @property 属性声明 定义了对属性的赋值 -(void) dealloc 方法在对象销毁的时候进行调用. #import <Foundat ...
- LeetCode 83. Remove Duplicates from Sorted List (从有序链表中去除重复项)
Given a sorted linked list, delete all duplicates such that each element appear only once. For examp ...
- Unity游戏小地图生成
孙广东 2015.6.25 这个在AssetStore上有几个不错的插件, 除了知道原理,能自己实现还是好的. 非常多插件是不会直接使用的.而是要依据自己项目的需求进行改动或者就是自己写. 那么我们 ...
- 【Bzoj2456】mode
Position: http://www.lydsy.com/JudgeOnline/problem.php?id=2456 List Bzoj2456 mode List Description S ...
- 怎么看待MYSQL的性能
MySQL在单实例性能方面和Oracle相比还有一些差距,我们通过规范和技术手段来降低这些性能差距带来的问题. 首先,大量甚至海量数据的增删改.查询.聚合查询的性能还有待提高.为了规避这些问题,我们在 ...
- PCB genesis方槽加内角槽孔实现方法
一.为什么方槽孔加内角孔 如下图,客户来的方槽或Slot槽有内角尺寸要求,通常直接钻一个Slot槽孔内角是不能满足客户要求的,这时我们做CAM的需采用小钻刀进行处理.加内角孔或内角槽的方式进行处理了. ...
- Akka源码分析-故障恢复
Actor故障恢复是akka中非常重要的内容,在之前的博客中虽然有介绍,但都是杂糅在其他知识点的细节中,本博客将单独介绍这一部分的故障恢复.为了简化分析的单独,本文只研究用户的actor故障恢复的步骤 ...
- Akka源码分析-Router
akak中还有一个比较重要的概念,那就是Router(路由).路由的概念,相信大家都不陌生,在akka中,它就是其他actors的一个代理,会把消息按照路由规则,分发给指定的actor.我一般喜欢把R ...
- CSS发布时间
* 1996年W3C正式推出了CSS1.* 1998年W3C正式推出了CSS2.* CSS2.1是W3C现在正在推荐使用的.* CSS3现在还处于开发中.
- action="post" 、 servletconfig 、 servletcontext 、getPrintWiter() 、context-param、 init-param(第一个完整的servlet)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <hea ...