XMLHttpRequest2级(自己的笔记首先自己要看得懂)
一、FormData
1、位序列化表单以及创建与表单格式相同的数据提供了便利
var xhr = createXHR(); xhr.onreadystatechange = function(event){ if (xhr.readyState == 4){ if ((xhr.status >= 200 && xhr.status < 300) || xhr.status == 304){ alert(xhr.responseText); } else { alert("Request was unsuccessful: " + xhr.status); } } }; xhr.open("post", "postexample.php", true); // 通过向FormData构造函数中传入表单元素或者表单元素的数据预先向其中填入键 // 值对儿 var form = document.getElementById("user-info"); xhr.send(new FormData(form));
2、overrideMimeType()方法
what:用于重写XHR响应的MIME类型(多用途互联网邮件扩展类型。是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。多用于指定一些客户端自定义的文件名,以及一些媒体文件打开方式。);
why:因为返回响应的MIME类型决定了XHR对象如何处理它,所以提供这个方法来重写服务器返回的MIME类型是很有用的;
eg:比如服务器返回的是纯文本类型,但数据中实际包含的是XML,根据MIME类型,即使数据是XML,reaponseXML属性中仍然是null。通过调佣overrideMimeType()方法,可以保证把响应当做XML而非纯文本来处理。必须在调用send()方法之前。
var xhr = createXHR(); xhr.open("get","text.php",true); xhr.overrideMimeType("text/xml"); // 强制XHR对象将响应当做XML而非纯文本处理 xhr.send(null);

浙公网安备 33010602011771号