浏览器中的网络请求
第一次写于: 2020年3月29日
最近, 学习了一些网络知识; 所以就想着结合实际用到的内容, 写一篇文章;
ajax
我们使用HTTP协议用于和server端的数据交互;
其中最常用的方式就是 ajax
它的定义和好处无需多言; 网上很多, 不再赘述;
有很多文章讲的都是框架之上的使用, 屏蔽了原生内容;
我就想着稍微地了解一些具体浏览器是怎么操作的;
这里给大家做一个分享;
ajax 其实是对 HTTP
协议的封装;
它会发起一个HTTP请求, 在请求的状态改变(readyState)时, 执行我们传入的方法;
发起请求
ajax 在浏览器中通过内置的 XMLHttpRequest
来生成;
let httpRequest = new XMLHttpRequest();
httpRequest.onreadystatechange = function() {
if (httpRequest.readyState === XMLHttpRequest.DONE) {
// Everything is good, the response was received.
} else {
// Not ready yet.
}
};
// 请求方法 请求URL 是否异步
httpRequest.open('GET', 'http://www.example.org/some.file', true);
// 在send之前; open之后
httpRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
httpRequest.send(