function createxhr() { var xhr=null; if(window.XMLHttpRequest) { var xhr = new XMLHttpRequest(); } else if(window.ActiveXObject) { xhr = new ActiveXObject("Microsoft.XMLHttp"); } return xhr; }
function state_change(url){ var xhr = createxhrjson(); console.log(xhr); xhr.open("GET",url,true); xhr.onreadystatechange = function(){ if(xhr.readyState==4 && xhr.status == 200){ document.getElementById("res").innerHTML = xhr.responseText; } } }
get方式
xhr.open(‘get‘, url + ‘?time=‘ + time + ‘&username=’ + username, true); xhr.send(null);
GET方式总结:用get方式可传送简单数据,但大小一般都限制在1KB下,数据追加到url中发送(http的header传送)。也就是说,浏览器将各个表单字段元素及其数据按照URL参数的格式附加在请求行中的资源路径后面。另外最重要的一点是,它会被客户端的浏览器缓存起来,那么,别人可以从浏览器的历史记录中读取到客户的数据,比较帐号密码,因此get方法在某些情况下,是会带来严重的安全性问题。
post方式
var queryVal = ‘time=‘ + time + ‘&username = ‘ + username: xhr.open(‘post‘, url, true); xhr.setRequstHeader(‘Content-Type‘, ‘application/x-www-form-urlencoded‘); xhr.send(queryVal);
POST总结:使用post方式时,浏览器把各表单字段及其数据作为HTTP消息实体内容发送Web服务器,而不是作为URL地址参数形式传递,所以使用post方式传递的数据量比使用get方式传递的数据量大的多。
XMLHttpRequest ajax功能,布布扣,bubuko.com
原文:http://www.cnblogs.com/decsev/p/3611357.html