城东小巷分享 http://blog.sciencenet.cn/u/chengdong166

博文

Ajax学习笔记

已有 3162 次阅读 2012-8-13 22:20 |个人分类:JS学习|系统分类:科研笔记| 服务器, AJAX, 客户端

XMLHttp提供了一套客户端同服务器端通讯的协议。

属性:

1、  readyState():返回XMLHttp请求的当前状态。

0XMLHttp对象已创建,但尚未创建请求;

1XMLHttp对象已创建,请求已创建,但尚未发送请求;

2:请求已发送,但尚未接收到响应;

3:已接收到响应,但尚未完全接收到所有的数据;

4:数据接收完毕。

 

2、  onreadystatechange()

XMLHTTP请求(说明请求已经创建,即readyState1状态开始变化)状态readyState发生改变时触发的事件处理句柄。

 

3、  创建XMLHTTP请求时,采用同步请求和异步请求方式的区别:

同步请求方式(false):客户端发送请求后,只有当从服务器端反馈回来的数据全部接收完毕后,用户才能够执行其它的操作。(这段时间,浏览器处于一种假死的状态)

异步请求方式(true):客户端向服务器端发送一次请求后,虽然未能完全执行,但用户仍然可以执行其它的操作。

 

4、  XMLHttp.responseText:将服务器端返回的数据以文本形式展示出来(字符串)。

XMLHttp.responseXML:将从服务器端返回的数据格式化为XML Document对象

服务器端脚本必须为UTF-8,否则会出现乱码。

含有中文显示,XML可以设置字符集GBK

5、  status:返回当前请求的http状态码

200 OK

500 服务器出现错误

403 禁止访问

404 文件未找到

400 非法URL

6GET请求和POST请求

    GET是一种常见的请求方式,最常见于向服务器查询某些信息。在URL中,“名值对”之间用“&”分割,名和值需要采用encodeURIComponent()的编码方式,否则易发生URL格式问题。下面提供一个通用的向URL追加“名值对”参数的函数。

function addURLParam(URL, name, value) {

  URL += (URL.indexOf(“?”) == -1 ? “?” : “&”);

  URL += encodeURIComponent(name) + “=” + encodeURIComponent(value);

  return URL;

}

    POST请求常常用于向服务器发送被保存的数据。在这里一定要注意,服务器端不会直接处理从客户端发送过来的原始数据,必须事先通过程序读取并解析从客户端发送过来的有用数据。


https://blog.sciencenet.cn/blog-448935-601907.html

上一篇:JSON in JavaScript Learning
下一篇:利用JS生成分页式table
收藏 IP: 122.82.41.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-6-2 19:36

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部