目录 start
目录 end
|2018-07-10| 码云 | CSDN | OSChina
网络
基础
码农翻身:小白科普:从输入网址到最后浏览器呈现页面内容,中间发生了什么? | 码农翻身:我是一个路由器 | 码农翻身:我是一个网卡
ISO七层模型和TCP/IP五层模型
ISO制定的OSI参考模型的过于庞大、复杂招致了许多批评。与此对照,由技术人员自己开发的TCP/IP协议栈获得了更为广泛的应用。
TCP和UDP
IPv4 & IPv6
网络延迟
TTFB
Time to first byte
网络请求被发起到从服务器接收到第一个字节这段时间,它包含了 TCP连接时间,发送HTTP请求时间和获得响应消息第一个字节的时间。
URL
- 统一资源定位符 特别注意URL的组成和编解码 url中的特殊字符问题
- 不能在URL的关键位置出现%号,作为参数的值是允许的。
Web安全
HTTP
HyperText Transfer Protocol 超文本传输协议
HTTP/1.1协议中共定义了八种方法(有时也叫“动作”)来表明Request-URI指定的资源的不同操作方式: OPTIONS 返回服务器针对特定资源所支持的HTTP请求方法。也可以利用向Web服务器发送'*'的请求来测试服务器的功能性。 HEAD 向服务器索要与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以在不必传输整个响应内容的情况下,就可以获取包含在响应消息头中的元信息。 GET 向特定的资源发出请求。注意:GET方法不应当被用于产生“副作用”的操作中,例如在web app.中。其中一个原因是GET可能会被网络蜘蛛等随意访问。 POST 向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。 PUT 向指定资源位置上传其最新内容。 DELETE 请求服务器删除Request-URI所标识的资源。 TRACE 回显服务器收到的请求,主要用于测试或诊断。 CONNECT HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。 方法名称是区分大小写的。当某个请求所针对的资源不支持对应的请求方法的时候,服务器应当返回状态码405(Method Not Allowed);当服务器不认识或者不支持对应的请求方法的时候,应当返回状态码501(Not Implemented)。
HTTP的返回码
HTTP的缓存
Session和Cookie
HTTP1.1 和 HTTP2
目前大多国内厂商默认的还是1.1, aws和google使用了2 而且2一般也都会使用上https
HTTP2的特点:
- 无阻塞的Multiplexing请求队列 可以异步加载CSS和JS
- server端可以push资源给client端
HTTPS
HSTS
HTTP Strict Transport Security 强制让客户端使用HTTPS进行通信
CORS
跨域
mozilla CORS 阮一峰 跨域资源共享 CORS 详解 CORS详解.md
Websocket
本质就是TCP的简单封装, 不像HTTP那样应答模式, 一次连接后就保持全双工模式
- 单一的TCP连接, 采用全双工模式通信
- 对代理, 防火墙和路由器透明
- 无头部信息, Cookie, 身份验证
- 无安全开销
- 通过 ping/pong 帧 保持链路激活
- 服务器可以主动传递消息给客户端, 不需要客户端轮询
WSS
WebDAV
WebDAV (Web-based Distributed Authoring and Versioning) 一种基于 HTTP 1.1协议的通信协议.它扩展了HTTP 1.1,在GET、POST、HEAD等几个HTTP标准方法以外添加了一些新的方法,使应用程序可直接对Web Server直接读写,并支持写文件锁定(Locking)及解锁(Unlock),还可以支持文件的版本控制。
WebAssembly
字节码技术 WebAssembly 实践:如何写代码 MDN