天天看点

JavaScript权威设计--跨域,XMLHttpRequest(简要学习笔记十九)

1.跨域指的是什么?

2.comet与ajax

3.xmlhttprequest

除了get与post之外,xmlhttprequest规范也允许第一个参数为delete,head,options,put。

如果有请求头的话,需要设置它。

如:post请求需要“content-type”头指定请求主题的mime类型。

JavaScript权威设计--跨域,XMLHttpRequest(简要学习笔记十九)

request.setrequestheader("content-type","text/plain");

post发送:

JavaScript权威设计--跨域,XMLHttpRequest(简要学习笔记十九)

4.为了在响应准备就绪得到通知,必须监听xmlhttprequest对象上的readystatechange事件。

readystate是一个整数,它指定了http请求的状态。

JavaScript权威设计--跨域,XMLHttpRequest(简要学习笔记十九)

下面是一个异步响应。

JavaScript权威设计--跨域,XMLHttpRequest(简要学习笔记十九)

下面是一个同步响应:

JavaScript权威设计--跨域,XMLHttpRequest(简要学习笔记十九)

5.<script>元素可以发起跨域请求。而xmlhttprequest api不可以。

我们可以通过检查头文件类型来判断响应的数据类型。

6.multipart/form-data

当html表单同事包含文件上传元素和其他元素时,浏览器不能使用普通的表单编码,

必须使用“multipart/form-data”的特殊content-type来用post方法提交表单。

7.文件上传

js:

JavaScript权威设计--跨域,XMLHttpRequest(简要学习笔记十九)
JavaScript权威设计--跨域,XMLHttpRequest(简要学习笔记十九)
JavaScript权威设计--跨域,XMLHttpRequest(简要学习笔记十九)

8.http进度事件

http请求超时,触发timeout事件

http请求中止,触发abort事件

http太多重定向的网络错误会阻止请求完成,触发error事件

与progress事件相关的其他三个属性:

loaded:目前传输的字节数值

total:头传输的数据的整体长度

lengthcopmputable:如果知道内容长度,为true

例子:

9.cors(跨域资源共享)

10.使用eventsource创建简单聊天客户端

JavaScript权威设计--跨域,XMLHttpRequest(简要学习笔记十九)

 转载:http://www.cnblogs.com/zqzjs/p/4883955.html

继续阅读