0
点赞
收藏
分享

微信扫一扫

设计模式-命令模式(Command Pattern)结构|原理|优缺点|场景|示例

洛茄 2024-05-02 阅读 6

目录

🚩DNS应用层协议(域名解析系统)

🚩HTTP协议

🎈理解 "应用层协议"

🎈理解 HTTP 协议的工作过程

🎈HTTP 协议格式

👩🏻‍💻抓包工具的使用

 👩🏻‍💻抓包工具的原理

👩🏻‍💻HTTP报头的请求和响应

🎓请求

🎓响应 

👩🏻‍💻HTTP 请求 (Request)

🎓认识URL

💻URL 基本格式

💻关于 URL encode 

 🎓认识方法(method)

💻 GET 方法和POST 方法

💻POST和GET方法的区别

🎓认识header

💻Host

💻Content-Length

💻Content-Type

💻User-Agent (简称 UA)

💻Referer

💻Cookie

👩🏻‍💻HTTP响应

🎓认识 "状态码" (status code)

💻200 OK

💻404 Not Found

💻3xx表示重定向

💻403 Forbidden

💻5xx 

👩🏻‍💻构造HTTP请求


🚩DNS应用层协议(域名解析系统)

使用IP地址,来描述设备在网络上的位置,这种不适合进行宣传,比如https://www.csdn.net/

引入了”域名“这样的方式来解决上述问题(域名就是单词,表示了实际意义)。

需要有一套自动的系统,把域名翻译成IP地址(域名和IP想象成一组键值对)

假如的IP地址是192.168.1.0 对应的域名是 www.xxx.com。是属于一组键值对关系。

如果你想要访问某个域名,就先给这个DNS服务器发起请求,查询一下当前域名对应的ip,然后再访问目标网站。后续域名的更新,只需要更新这一组指定的服务器即可,不需要修改每个用户电脑的hosts。



🚩HTTP协议

HTTP (全称为 "超文本传输协议") 是一种应用非常广泛的 应用层协议.



🎈理解 "应用层协议"


🎈理解 HTTP 协议的工作过程

当我们在浏览器中输入一个 " 网址 ", 此时浏览器就会给对应的服务器发送一个 HTTP 请求 . 对方服务器收到这个请求之后, 经过计算处理 , 就会返回一个 HTTP 响应 .


🎈HTTP 协议格式

HTTP 是一个文本格式的协议 . 可以通过 Chrome 开发者工具或者 Fiddler 抓包 , 分析 HTTP 请求 / 响应的细节.

👩🏻‍💻抓包工具的使用

Fiddler把网卡上经过的数据,获取到,并显示出来。(专门抓HTTP的抓包工具)

fiddler打开之后,是一个左右结构的程序,左侧有一个列表,列出了抓到的包有哪些,右侧则是包的详情,点击某个包。新安装的fiddler需要手动开启HTTPS功能,并且安装证书(否则只能抓http),当前互联网环境上,HTTPS为主,纯HTTP非常少见了。


 👩🏻‍💻抓包工具的原理

Fiddler本质上是一个“代理”,可能会和其他的代理软件冲突





👩🏻‍💻HTTP报头的请求和响应

🎓请求

🎓响应 

👩🏻‍💻HTTP 请求 (Request)

🎓认识URL
💻URL 基本格式


💻关于 URL encode 

 🎓认识方法(method)


💻 GET 方法和POST 方法

💻POST和GET方法的区别


🎓认识header

header里面的关键字比较多,我们主要挑重要的说。


💻Referer

Referer描述了当前页面是从哪个页面跳转来的。

如果直接在地址栏输入url(或者点击收藏夹中的按钮)都是没有Referer


💻Cookie

Cookie 中存储了一个字符串 , 这个数据可能是客户端 ( 网页 ) 自行通过 JS 写入的 , 也可能来自于服务器 ( 服务器在 HTTP 响应的 header 中通过 Set-Cookie 字段给浏览器返回数据 ).

往往可以通过这个字段实现 " 身份标识 " 的功能

浏览器的数据来自于服务器,浏览器后续的操作,也是要提交给服务器的。服务器这边管理了一个网站的各种核心数据,但是程序运行过程中,也会有一些数据,需要在浏览器这边存储的,并且后续请求的时候数据可能需要再发给服务器。(上次登陆时间,上次访问时间,用户的身份信息,累计访问次数....)这些临时性数据存储在浏览器比较合适的。

实际上更容易想到的是,把这样的数据直接存储到本地文件中,但是实际上是不可行的,浏览器为了考虑到安全性,禁止网页直接访问你的电脑文件系统,网页代码中也就无法直接生成一个硬盘的文件来存储数据了。

为了保证安全性,又能进行存储数据 ,于是引入了Cookie(也是按照硬盘文件的方式保存的,但是浏览器把操作文件给封装了)网页只能往Cookie存储键值对。


👩🏻‍💻HTTP响应

🎓认识 "状态码" (status code)

状态码表示访问一个页面的结果. (是访问成功, 还是失败, 还是其他的一些情况...).

以下为常见的状态码 .


👩🏻‍💻构造HTTP请求

构造HTTP请求的简单方法是,用第三方工具 ,图形化界面。POSTMAN

举报

相关推荐

0 条评论