按键精灵基础课程1(按键精灵post教学系列1)
按键精灵基础课程1(按键精灵post教学系列1)一些补充的知识点:以上 就是浏览器的工作流程 当我们在浏览器里点击链接或者输入地址的后 它就和服务器重复的进行如上的工作 从而让我们看到并操作网页5.浏览器开始接受服务器发来的内容 根据服务器发给浏览器本身的东西 开始工作 哦..你用gzip压缩过啊..我就用gzip方式解 压 哦 你用gbk编码的啊..我得用gbk解码 哦你发的cookie啊..我该存的存 该改的改 该删的删...哦 这是你的网页源文件啊..我收收收..6.数据接收完成后 浏览器开始处理数据了 网页里的代码该执行的执行 网页里的图片和文件该下载的下载(这类资源文件是不包含在网页里的 网页里只有一个链接 浏览器得灯具链接去下载才能得到) 根据网页里的css内容 基于网页元素进行排版 最终生成网页 显示在我们眼前7.响应用户的各种操作 根据用户的操作做出相应的行为 或者是提交表单.或者去是一个链接 或者是运行一段js代
正名: "POST" 这个叫法是很不科学的 必须正名 它真的真名是: XHR (Xml Http Requset)
垫底的知识点:
- 浏览器是如何工作的(按键论坛为例)
当我们打开浏览器 在里面的输入网址(http://bbs.anjian.com) 然后按下回车之后:
- 浏览器连接DNS服务器:把按键的域名域名解析为IP地址(117.27.152.245:80) 域名是为了让我们人类好记和容易理解而存在的.真正http通讯 它所需要的永远是IP地址.
- 当浏览器得到IP地址以后:连接这个按键论坛的IP
- 连接成功后:向地址服务器发送消息 消息永远分2个部分
- 浏览器自己发给服务的消息:比如:我是啥浏览器 我的工作系统是什么系统 我能处理什么格式的文件 我比较偏向简体中文的网页语言 我从什么网址来到你这个服务器的等等...
- 我们使用者向服务器提交的请求:比如我要去的地方是按键的综合讨论板块 等等
4.按键服务器接受到我们的请求以后开始工作了:
- 首先.给浏览器发个应答信息 意思是告诉浏览器 你的信息我收到了.我打算干啥.这个信息是用数字表达的..不同的数字代码不同的含义比如:200(代表我收到了 下面我将开始发给你你所请求的内容)301(我收到了 你去我给你的网址服务器拿吧 下面我把网址发给你)304(我收到了 你从缓存去拿网页吧..我就不发了)400(我收到了..但是你发的是啥啊我看不懂)404(我收到了 但是你请求的东西不存在啊)等等
- 如果服务器返回的数字是200 这个工作才存在 服务器给浏览器发送数据 数据也包括2个内容 发给浏览器本身的和发给我们的 发给浏览器的有:我是啥服务器 我发给你的时间是什么时间(服务器的时间哦 大家想到点啥?) 我发给你的内容是用什么方式压缩的 我发给你的内容一共多长 我发给你的网页是用什么字符编码的 等等等 顺便提一下:cookie也是在这发的......第2部分:发给我们的网页的内容
5.浏览器开始接受服务器发来的内容 根据服务器发给浏览器本身的东西 开始工作 哦..你用gzip压缩过啊..我就用gzip方式解 压 哦 你用gbk编码的啊..我得用gbk解码 哦你发的cookie啊..我该存的存 该改的改 该删的删...哦 这是你的网页源文件啊..我收收收..
6.数据接收完成后 浏览器开始处理数据了 网页里的代码该执行的执行 网页里的图片和文件该下载的下载(这类资源文件是不包含在网页里的 网页里只有一个链接 浏览器得灯具链接去下载才能得到) 根据网页里的css内容 基于网页元素进行排版 最终生成网页 显示在我们眼前
7.响应用户的各种操作 根据用户的操作做出相应的行为 或者是提交表单.或者去是一个链接 或者是运行一段js代码等等
以上 就是浏览器的工作流程 当我们在浏览器里点击链接或者输入地址的后 它就和服务器重复的进行如上的工作 从而让我们看到并操作网页
一些补充的知识点:
- 一张网页远远不止是一次http请求所得 是很多次请求的综合体:我们看到的图片/听到的声音/很多js代码/很多css规则/他们都是以文件形式存在的 浏览器得根据网页得内容去分别下载
- 网页是带有代码的 浏览器是会执行代码的 编写这个代码的语言是javascript 也是种脚本语言 IE内核的浏览器支持2种脚本语言:javascript和vbs(IE12以前是这样的 据传IE12也开始不支持vbs了) 其他内核浏览器只支持javascript 真因为如此 所以现在的网页都只带一种代码 javascript 简称js
- 同一个网址为啥他显示的是中文版的 我显示的是英文版的?答案在上面的3 浏览器向服务器发的语言偏好不一样导致的(前提是服务器得有同一个网页请求得不同语言版本!!!)
- 看到的网页和源文件对不上? 因为网页里的js代码带有改变网页的内容 浏览器执行了这些代码..网页内容被js改过了 所以不一样了.
- Cookie是啥: 所有http服务器有个特点 他们没有记忆力 当你打开一个网页 马上再去打开的时候 他们压根是不知道你几秒前曾经来过 为了让服务器克服这个毛病..cookie就诞生了 他们由服务器发过来并被浏览器保存 浏览器每次请求都会带着保存目标服务器的曾经给过它的cookie...服务器不认识你 但是它认识cookie..它通过cookie间接的认识..并且也根据cookie的内容知道你曾经在它那干了点啥.......比如:你登陆过..登陆名是什么..你上次浏览网站是什么时候 你浏览过哪些页面..等等等等...这些信息都直接或者间接的来自cookie...
- Catche是啥:Catche就是缓存 是为了节省带宽和提高网页显示速度而存在的 它是网页的拷贝副本.除了你的浏览器设置 服务器也会告诉浏览器启不启用缓存功能...当他返回304的时候..浏览器就从缓存读网页了..同时 网站也不会发给你网页了..这就节省了服务器的带宽了..同时 浏览器从硬盘读网页速度当然远远快于服务器传给你网页..你的显示也就快了....上网体验也就好了
好了 让我们整理下浏览器的功能吧:
- 浏览器功能=通过http协议取得网页源文件 并且根据服务器的要求处理数据(cookie和Catche) 下载源文件里指定的各种资源文件 执行js脚本代码 根据css规则进行网页排版并最终显示
再进一步:
- 浏览器功能=XHR 下载源文件里指定的各种资源文件 执行js脚本代码 根据css规则进行网页排版并最终显示
所以XHR的功能大家也明白了
- XHR:通过http协议取得网页源文件 并且根据服务器的要求处理数据(cookie和Catche)的这样.也就是实现了上面浏览器功能的1--5的步骤
个人补充:其实这么定义是根本不全面和完整的.我完全是基于我们在按键里使用它的功能来定义的.在按键里..我们也就是用到了HR(Http Reauqest)功能.X(Xml 一种文档格式 在网页应用上有举足轻重的地位)压根用不上 大家将就着看吧....那为何叫XHR而不是叫HR呢....全世界都这么叫嘛..我总不成为了按键改成HR吧....
啰嗦完了 我尽量用了最最普通的文字去解解释所有涉及的知识概念 可能不是很精确.大家谅解吧..毕竟我的期望是所有人都能看懂!!!
金猪脚本(原飞猪脚本)以按键精灵教学为主 涉及UiBot,Python Lua等脚本编程语言 教学包括全自动办公脚本 游戏辅助脚本 引流脚本 网页脚本 安卓脚本 IOS脚本 注册脚本 点赞脚本 阅读脚本以及网赚脚本等各个领域。想学习按键精灵的朋友可以添加金猪脚本粉丝交流群:554127455 学习路上不再孤单 金猪脚本伴你一同成长.