AJAX学习

1.XMLHttpRequest对象创建

var request= new XMLHttpRequest();

兼容ie6。ie5

var request;

if(windoe.XMLHttpRequest){

   request= new XMLHttpRequest();//IE7+,Firefor,Chorme,Opera,....

}else{

   request=new ActiveXObject("Microsoft.XMLHTTP");//IE6。IE5

}





2.HTTP请求步骤

(1)建立TCP连接

(2)Web浏览器向Webserver发送请求命令

(3)Webserver发送请求头信息

(4)Webserver应答

(5)Webserver发送应答信息

(6)Webserver向浏览器发送数据

(7)Webserver关闭TCP连接





3.HTTP请求一般由四部分组成

(1)HTTP请求的方法或动作。比方是GET还是POST请求

(2)正在请求的URL。总得知道请求的地址是什么

(3)请求头,包括一些client环境信息,身份验证信息等

(4)请求体,就是请求正文。请求正文中能够包含客户提交的查询字符串信息,表单信息等等

.GET:一般用于信息获取,使用URL传递參数,对所发送信息的数量有限,一般在2000个字符

.POST:一般用于改动server上的资源。

对所发送信息的数量无限。是比GET安全。

4.HTTP响应一般由三部分组成

(1)一个数组和文字组成的状态码。用来显示请求是成功还是失败

(2)响应头,包括非常多实用信息,如:server类型、日期时间、内容类型和长度等

(3)响应体,就是响应正文





5.HTTP状态码

.1XX:信息类,表示收到Web浏览器请求,正在进一步的处理中

.2XX:成功,表示用户请求被正确接收。处理。如:200 OK

.3XX:重定向,表示请求没有成功。客户必须採取进一步的动作

.4XX:client错误,表示client提交的请求有错误,如:404 NOT Found,意味着请求中所引用的文档不存在

.5XX:server错误,表示server不能完毕对请求的处理:如500





6.XMLHttpRequest发送请求

.open(method,url,async)[请求方法。请求地址,请求同步、异步]

.send(string)

注意:使用GET请求时send能够为null。使用POST请求send不能为null。

样例:

request.open("GET","get.php",true);

request.send();





request.open("POST","post.php",true);

request.send();





request.open("POST","sreate.php","true");

request.setRequestHeader("Content-type","application/x-www-form-urlencoded");

request.send("name=hyp&sex=女");

注意:setRequestHeader()方法设置http头信息。一定是在open和send之间。





7.XMLHttpRequest取得响应

.responseText:获取字符串形式的响应数据

.responseXML:获取XML形式的响应数据

.status和statusText:以数字和文本形式返回HTTP状态码

.getAllResponseHeader():获取全部的响应报头

.getResponseHeader():查询响应中的某个字段的值

.readyState属性

>0:请求末初始化,open还没有调用

>1:server连接已建立。open已经调用了

>2:请求已接收,也就是接收到头信息了

>3:请求处理中,也就是接收到响应主体了

>4:请求已完毕,且响应已就绪。也就是响应完毕了

AJAX的概念介绍的更多相关文章

  1. activemq概念介绍

    ActiveMQ概念介绍 是Apache下的开源项目,完全支持JMS1.1和J2EE1.4规范的JMS Provider实现,消息中间件. 消息中间件: A传递消息到B(功能或者系统),有比较强的耦合 ...

  2. 【Oracle 集群】ORACLE DATABASE 11G RAC 知识图文详细教程之集群概念介绍(一)

    集群概念介绍(一)) 白宁超 2015年7月16日 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习 ...

  3. AJAX初探,XMLHttpRequest介绍

    AJAX初探,XMLHttpRequest介绍 AJAX      AJAX = Asynchronous JavaScript and XML. 异步的JavaScript和XML.      AJ ...

  4. Linux LVM硬盘管理之一:概念介绍

    一.LVM概念介绍: LVM是 Logical Volume Manager(逻辑卷管理)的简写,它由Heinz Mauelshagen在Linux 2.4内核上实现.LVM将一个或多个硬盘的分区在逻 ...

  5. JQuery中的AJAX参数详细介绍

    Jquery中AJAX参数详细介绍 参数名 类型 描述 url String    (默认: 当前页地址) 发送请求的地址. type String (默认: "GET") 请求方 ...

  6. Java SE/ME/EE的概念介绍

    转自 Java SE/ME/EE的概念介绍 多数编程语言都有预选编译好的类库以支持各种特定的功能,在Java中,类库以包(package)的形式提供,不同版本的Java提供不同的包,以面向特定的应用. ...

  7. ThinkPHP页面跳转、Ajax技巧详细介绍(十八)

    原文:ThinkPHP页面跳转.Ajax技巧详细介绍(十八) ThinkPHP页面跳转.Ajax技巧详细介绍 一.页面跳转 $this->success('查询成功',U('User/test' ...

  8. rocketMq概念介绍

    rocketMq官网 http://rocketmq.apache.org/ rocketMq逻辑概念介绍 rocketMq逻辑图 备注:    改图片分享自李占卫的网上家园 说明: 在rocketM ...

  9. java 并发多线程 锁的分类概念介绍 多线程下篇(二)

    接下来对锁的概念再次进行深入的介绍 之前反复的提到锁,通常的理解就是,锁---互斥---同步---阻塞 其实这是常用的独占锁(排它锁)的概念,也是一种简单粗暴的解决方案 抗战电影中,经常出现为了阻止日 ...

随机推荐

  1. innodb的innodb_buffer_pool_size和MyISAM的key_buffer_size

    一. key_buffer_size 对MyISAM表来说非常重要. 如果只是使用MyISAM表,可以把它设置为可用内存的 30-40%.合理的值取决于索引大小.数据量以及负载 -- 记住,MyISA ...

  2. Android Studio Gradle 版本不同报错解决方法

    由于GFW的原因,我们在使用as时经常出现失败,或者第一次新建工程不成功. 很多博客上已经提到了如何解决第一次新建工程Gradle构建的问题,那么在打开别的工程时依旧会报错 "Failed ...

  3. java之NIO编程

    所谓行文如编程,随笔好比java文件,文章好比类,参考文献是import,那么目录就是方法定义. 本篇文章处在分析thrift的nonblocking server之前,因为后者要依赖该篇文章的知识. ...

  4. ionic开发环境搭建

    Advanced HTML5 mobile development framework and SDK. Build incredible mobile apps with web technolog ...

  5. centos安装redis-3.2.3

    这次介绍的是在虚拟机centos下安装redis-3.2.3 首先进入官网http://redis.io/download

  6. 为什么要刷新一下才能获取cookie

    首先编写以下简单的代码: <?php setcookie('a','value'); print $_COOKIE['a']; 第一次访问时,报错: 报错的原因是$_COOKIE['a']的值不 ...

  7. Microsoft Anti-Cross Site Scripting Library V4.2 下载地址

    概述 微软反跨站脚本库V4.2(AntiXSS V4.2)是一种编码库,旨在帮助开发人员保护他们的ASP.NET基于Web的应用程序免受XSS攻击.它不同于编码库,因为它使用的白名单技术-有时也被称为 ...

  8. [Python 3.x 官方文档翻译]The Python Tutorial Python教程

    Python is an easy to learn, powerful programming language. It has efficient high-level data structur ...

  9. SQL语句中output的用法

    在SQL语句中,output可以作为返回值来使用, 1.我们先看这个存储过程 代码: 1 set ANSI_NULLS ON  2 set QUOTED_IDENTIFIER ON  3 go  4 ...

  10. ASP.NET MVC学习之路:模板页

    1.MVC开发步骤: 控制器-视图. 2.每一个视图都会有一个默认的模板页:_ViewStart.cshtml. 名字不能改,只能叫_ViewStart. 3.Layout=”~/Views/Shar ...