AJAX-XMLHttpRequest对象

AJAX--XMLHttpRequest对象

强烈推荐<疯狂ajax讲义>

 

XMLHttpRequest的基本方法:
AJAX-XMLHttpRequest对象
 

 

XMLHttpRequest的属性
AJAX-XMLHttpRequest对象
 

 每当readystate的值改变的时候,onreadystatechange都会被触发,因此需要判断状态再执行

 

少用GET请求方式,多用POST,POST的优点:

1.不容易出现乱码

2.请求返回的数据量的容量大

3.与GET方式相比,参数简单

 

AJAX使用JSON数据格式代码举例:

服务器:
AJAX-XMLHttpRequest对象

 

客户端:
AJAX-XMLHttpRequest对象
AJAX-XMLHttpRequest对象
 用JavaScript内置的eval()函数解析JSON数据可能存在一些安全问题,也可以使用一些更安全的库(比如prototype)

 

 

AJAX应用存在的问题

1. XmlHttpRequest的跨浏览器兼容问题

2.安全性问题:

  •  javaScript本身的安全问题
  • 数据在网络传输的安全问题,解决方法:使用HTTPS请求
  • 客户端调用远程服务的安全

 

 

 

XmlHttpRequest存在的问题:

  •  只支持文本数据的传送,无法用来读取和上传二进制文件。
  •  传送和接收数据时,没有进度信息,只能提示有没有完成。
  •   受到"同域限制",只能向同一域名的服务器请求数据。

XmlHttpRequest level 2的新特性:

  •  可以设置HTTP请求的时限。
  •  可以使用FormData对象管理表单数据。
  •    可以上传文件。
  •  可以请求不同域名下的数据(跨域请求)。
  •  可以获取服务器端的二进制数据。
  •     可以获得数据传输的进度信息。

HTTPS传输协议:建立在安全Socket通信上的HTTP协议,这种验证需要使用计算机资源,对服务器来说是一个不小的开销