来源:http://www.imooc.com/learn/250

Ajax不是某种编程语言,而是一种在无须重新加载整个网页的情况下能够更新部分网页的技术。

一.概念介绍--异步

  利用XMLHttpRequest(XHR)对象来实现后台和服务器数据交换,这样就实现了异步。  步骤如下:

  运用HTML和CSS来实现页面,表达信息;

  运用XMLHttpRequest和web服务器进行数据的异步交换;

  运用JavaScript操作DOM,实现动态局部刷新。

 二.XHR对象的使用

var request;
if(window.XMLHttpRequest){
request = new XMLHttpRequest();//IE7+,Firefox,Chrome,Opera,Safari
}else{
request = new ActiveXObject("Microsoft.XMLHTTP"); //IE6,IE5
}

当然现在一般情况下是忽略掉IE5和IE6的

三.HTTP请求

  http是计算机通过网络进行通信的规则。它是一种无状态的协议,也就是说浏览器向服务器传递一个请求,然后服务器回应一个请求,之后两者间的联系就被关闭了。

  一个完整的HTTP请求过程,通常有下面7个步骤:

  1.建立TCP连接

  2.Web浏览器向Web服务器发送请求命令

  3.Web浏览器发送请求头信息

  4.Web服务器应答

  5.Web服务器发送应答头信息

  6.Web服务器向浏览器发送数据

  7.Web服务器关闭TCP连接

  一个HTTP请求一般由四部分组成:

  1.HTTP请求的方法或动作,比如是GET还是POST请求

  2.正在请求的URL,总得知道请求的地址是什么吧

  3.请求头,包含一些客户端环境信息,身份验证信息等

  4.请求体,也就是请求正文,请求正文中可以包含客户提交的查询字符串信息,表单信息等等

GET:一般用于信息的获取

    使用URL传递参数

    对所发送信息的数量也有限制,一般在2000个字符

POST:一般用于修改服务器上的资源

    对所发送信息的数量无限制

  一个HTTP响应一般由三部分组成:

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

  2.响应头,响应头也和请求头一样包含许多有用的信息,例如服务器类型、日期时间、内容类型和长度等

  3.响应体,也就是响应正文

  HTTP状态码由3位数字构成,其中首位数字定义了状态码的类型:

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

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

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

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

  5XX:服务器错误,表示度武器不能完成对请求的处理:如 500

  了解上述状态码有助于开发者调试理解Web开发中的错误

Ajax学习笔记(一)的更多相关文章

  1. AJax 学习笔记二(onreadystatechange的作用)

    AJax 学习笔记二(onreadystatechange的作用) 当发送一个请求后,客户端无法确定什么时候会完成这个请求,所以需要用事件机制来捕获请求的状态XMLHttpRequest对象提供了on ...

  2. Ajax学习笔记demo

    AJAX学习 AJAX简介: 全称:Asynchronous JavaScript and XML (JavaScript执行异步网络请求(JS和XML)),通过AJAX可以在浏览器向服务器发送异步请 ...

  3. 基于PHP的AJAX学习笔记(教程)

    本文转载自:http://www.softeng.cn/?p=107 这是本人在学习ajax过程所做的笔记,通过本笔记的学习,可以完成ajax的快速入门.本笔记前端分别使用原生态的javascript ...

  4. ajax学习笔记1

    ajax是什么? ajax即“Asynchronous Javascript + XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术.能够快速的从服务器获得所需数据 ...

  5. AJAX学习笔记

    AJAX不是一种编程语言,AJAX是一种实现网页异步加载的技术,即不刷新网页也能部分的更新网页的内容.如:提交表单信息,通过ajax可以不刷新页面来使得人们明白如何正确的填写信息,判断填写信息的错误或 ...

  6. Jquery ajax 学习笔记

    本人的js & jq 一直是菜鸟级别,最近不忙就看了看ajax方面的知识,文中部分内容参考自这里&这里 之前一直用js写ajax现在基于jq实现方便多了~ $.get & $. ...

  7. Ajax学习笔记2之使用Ajax和XML

    <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Using Ajax wit ...

  8. Ajax学习笔记1之第一个Ajax应用程序

    代码 <head> <title>An Ajax demo</title> <script src="../js/jquery-1.4.1.js&q ...

  9. Ajax学习笔记(二)

    二.prototype库具体解释 1.prototype库的使用 //导入下载好的prototype.js文件 <script type="text/javascript" ...

  10. ajax学习笔记(原生js的ajax)

    ajax是一个与服务器端语言无关的技术,可以使用在任何语言环境下的web项目(如JSP,PHP,ASP等). ajax优点: 1) 页面无刷新的动态数据交互 2) 局部刷新页面 3) 界面的美观 4) ...

随机推荐

  1. iOS上传文件,有关http上传协议-RFC1867

    以上是抓包HTML input file标签上传的内容 只要模拟上面http 的header跟body就可以成功. 整体说明: post 上传文件时,以在http body里面带参数,参数的格式,根据 ...

  2. VNC 抓取远程桌面

    VNC (Virtual Network Computing)是虚拟网络计算机的缩写.VNC 是一款优秀的远程控制工具软件,由著名的 AT&T 的欧洲研究实验室开发的.VNC 是在基于 UNI ...

  3. Mysql大数据量查询优化

    一般MYSQL最基本的分页方式: select * from content order by id desc limit 0, 10 在中小数据量的情况下,这样的SQL足够用了,唯一需要注意的问题就 ...

  4. 为DELL inspiron 14R安装CentOS X64 6.4

    今天接到一个任务,为DELL inspiron 14R安装CentOS X64 6.4,本以为这是小菜一碟,不算个啥,大大小小安装LINUX CENTOS 不下上百次了,还怕这个?结果,各种碰壁... ...

  5. uva 387 A Puzzling Problem (回溯)

     A Puzzling Problem  The goal of this problem is to write a program which will take from 1 to 5 puzz ...

  6. C# OpenFileDialog和PictrueBox

     string resultFile = ""; OpenFileDialog openFileDialog1 = new OpenFileDialog(); openFile ...

  7. Apache DbUtils - JDBC轻量级封装的工具包

    前段时间使用了Apache Common DbUtils这个工具,在此留个印,以备不时查看.大家都知道现在市面上的数据库访问层的框架很多,当然很多都是包含了OR-Mapping工作步骤的例如大家常用的 ...

  8. Android学习之路

    Android基础 整理下个人认为新手们必须要掌握的知识点,顺便也会附带相应觉得不错的讲解博客地址. 两分钟彻底让你明白Android Activity生命周期(图文)! Activity实际开发中使 ...

  9. Redis 安装与简单示例 <第一篇>

    一.Redis的安装 Redis下载地址如下:https://github.com/dmajkic/redis/downloads 解压后根据自己机器的实际情况选择32位或者64位.下载解压后图片如下 ...

  10. 安卓开发之使用viewpager+fragment实现滚动tab页

    闲着.用viewpager+fragment实现了个滚动tab..轻拍,以后会陆续发先小东西出来..爱分享,才快乐.demo见附件.. package com.example.demo; import ...