HTTP
光就一个字
这个作者很懒,什么都没留下…
展开
-
HTTP/2 推送比我想象得更加艰难
摸鱼时偶然看到这篇文章,兴起翻译了一下。也是第一次尝试翻译技术文档,写到一半发现已经是17年的文章了,结论的时效性已经不强,但私心又不舍半途而废,因兴致而起的行为总是落地了、有了产出才会更有成就感。原文链接:HTTP/2 push is tougher than I thought分割线以下为译文。说到页面加载性能问题的时候,我经常听到说:“HTTP/2推送会解决那个的。”但我不太了解它,...翻译 2020-01-08 15:13:54 · 436 阅读 · 0 评论 -
CSP-内容安全策略
Content-Security-Policy限制资源获取报告资源获取越权default-src 限制全局指定资源类型限制(connect-src/img-src/script-src/style-src/media-src...)常用限制1.限制inline-script(html行内js)与其他域的script引入2.限制外部地址跳转,form-action3.等等...原创 2018-07-27 16:14:05 · 598 阅读 · 0 评论 -
HTTP返回码中301与302的区别
一.官方说法301,302 都是HTTP状态的编码,都代表着某个URL发生了转移,不同之处在于: 301 redirect: 301 代表永久性转移(Permanently Moved)。 302 redirect: 302 代表暂时性转移(Temporarily Moved )。 这是很官方的说法,那么它们的区别到底是什么呢?二.现实中的差异2.1.对于用户30...转载 2018-07-27 15:33:33 · 251 阅读 · 0 评论 -
redirect-重定向
redirect-重定向资源更换地址后,为保证原地址的有效性,而对原url做的302/301重定向处理。302:暂时性转移,每次访问都会请求到服务端判断301:永久性转移,缓存后访问不会请求到服务端,而是直接跳转(谨慎使用)301与302对SEO的不同影响实例node服务:server.jsconst http = require('http')http.create...原创 2018-07-27 15:24:46 · 3456 阅读 · 0 评论 -
数据协商
数据协商客户端请求时会声明希望拿到的数据格式和限制,服务端根据请求头返回不同的数据客户端请求Accept声明想要的数据类型,[主类型]/[子类型] ,如text/html,image/jpgAccept-Encoding声明进行传输的编码方式,主要是数据压缩的算法,如gzip, deflate, brAccept-Language声明希望返回信息的语言,如zh...原创 2018-07-27 14:21:30 · 223 阅读 · 0 评论 -
http长连接keep-alive
connectionclose:短连接,每次请求都建立一个TCP连接Keep-Alive:长链接,使浏览器可以在一个TCP/IP连接中做多次请求,性能更高;chrome允许并发的TCP连接数是6HTTP1.0默认false,HTTP1.1默认是keep-aliveHTTP2信道复用,可以在一个TCP连接上并发同域请求,如谷歌官网。实例node服务器:server.jsc...原创 2018-07-27 11:05:53 · 1037 阅读 · 0 评论 -
前端眼中的nginx
Nginx轻量级高性能的反向代理HTTP服务器代理正向代理:客户端的代理服务器代替用户去访问目标服务器反向代理:服务端转发请求到原始服务器,将返回结果返回给客户端反向代理作用1、原始服务器的防火墙只允许特定代理服务器进出,起到保护和隐藏原始资源服务器的作用; 2、负载均衡:将业务担给多个服务器或网络设备,提高了业务处理能力,保证了业务的高可用性(nginx会给你分配服...原创 2018-07-30 11:42:39 · 447 阅读 · 0 评论 -
Cookie
Cookie服务端返回数据时,通过Set-Cookie保存在浏览器中,下次请求时会自动携带。键值对,可以设置多个。属性max-age和expires: 设置过期时间Secure:在https的时候发送HttpOnly:无法通过document.cookie访问(安全性)CSRF攻击:通过页面脚本或引导用户向攻击者的服务器发送携带cookie的请求来获取隐私数据...原创 2018-07-26 18:56:23 · 205 阅读 · 0 评论 -
服务端的缓存验证 Last-Modified和Etag
Last-Modified 上次修改时间 配合If-Modified-Since或者If-Unmodified-Since使用 对比上次修改时间验证资源是否需要更新ETag数据签名典型做法:对资源内容进行hash计算配合If-Match或者Id-Non-Match使用对比资源的签名判断是否使用缓存缓存验证流程在浏览器和服务端设置都允许缓存策略的前提下(服务端响...原创 2018-07-26 14:36:21 · 5070 阅读 · 0 评论 -
Cache-Control
Cache-Control请求头的一种,定义对缓存的配置。可缓存性public:可在HTTP请求经过的任何地方进行缓存private:只有发起请求的浏览器可进行缓存no-cache:本地缓存需验证后才可使用有效期max-age=<seconds> 缓存存在最大时间s-maxage=<seconds&amp原创 2018-07-25 19:54:48 · 804 阅读 · 0 评论 -
CORS跨域限制的解决方案
CORS跨域方法:服务器在响应的header中设置Access-Control-Allow-origin为*,即可允许所有域名的跨域访问。限制:1.请求方法限制:GET、POST、HEAD2.请求头限制:text/plain,multipart/form-data,application/x-www-form-urlencoded3.域名限制:允许跨域域名设为*并不安全,一般判断请...原创 2018-07-25 18:20:28 · 2959 阅读 · 0 评论 -
HTTP报文与HTTP方法
HTTP报文// 请求报文GET /test/hi-there.txt HTTP/1.0 // 起始行Accept: text/* // HEADER(首部)Accept-language: en,fr// 响应报文HTTP/1.0 200 OK // 起始行 换行 ⬇️Content-type: text/plai...原创 2018-07-25 17:35:39 · 392 阅读 · 0 评论 -
URI:URL和URN
URIUniform Resource Identifier/统一资源标志符 用来唯一标识互联网上的信息资源,包括URL和URNURLUniform Resource Locator/统一资源定位器例: http://user:pass@host.com:80/path?query=string#hashhttp:协议,用来定义如何传输和解析,还有ftp、https等 u...原创 2018-07-25 16:28:30 · 161 阅读 · 0 评论 -
TCP连接的三次握手
为什么是3次握手?一个小例子:我们假设A和B是通信的双方。我理解的握手实际上就是通信,发一次信息就是进行一次握手。第一次握手: A给B打电话说,你可以听到我说话吗?第二次握手: B收到了A的信息,然后对A说: 我可以听得到你说话啊,你能听得到我说话吗? 第三次握手: A收到了B的信息,然后说可以的,我要给你发信息啦!在三次握手之后,A和B都能确定这么一件事: 我说的话,你能听...原创 2018-07-25 15:59:04 · 128 阅读 · 0 评论 -
HTTP发展史
HTTP/0.9 初始只有一个命令GET没有HEADER等描述数据的信息服务器发送完毕,就关闭TCP连接(非持久连接)HTTP/1.0 完备增加了很多命令增加status、code和header多字符集支持、多部分发送、权限、缓存HTTP/1.1 提升持久连接(一个连接处理多个请求-响应事务)pipeline(“流水线”,降低延迟,减少请求时间)增加host(可...原创 2018-07-25 11:44:57 · 290 阅读 · 0 评论 -
OSI七层模型与TCP/IP五层模型
一、OSI参考模型1、OSI的来源OSI(Open System Interconnect),即开放式系统互联。 一般都叫OSI参考模型,是ISO(国际标准化组织)组织在1985年研究的网络互连模型。ISO为了更好的使网络应用更为普及,推出了OSI参考模型。其含义就是推荐所有公司使用这个规范来控制网络。这样所有公司都有相同的规范,就能互联了。2、OSI七层模型的划分OSI定...转载 2018-07-25 11:26:19 · 373 阅读 · 0 评论 -
访问github无css样式的解决方案
1、浏览器右键查看加载失败的css文件来源 加载失败此处文件名会为红色 复制域名assets-cdn.github.com 2、查询css文件所在ip 打开https://www.ipaddress.com右上角输入框粘贴之前的css所在域名,点击搜索,记下搜索结果的ip 3、修改host文件 mac下: 打开finder(访达),点击右上角 前往-前往文件夹 输入/pri...原创 2018-06-19 10:45:39 · 5943 阅读 · 0 评论 -
GET和POST的区别
POST和GET是HTTP协议中最常用的两种传参方式,这里小小总结一下两者的区别,欢迎补充~! 请求方式 GET POST 参数位置 header content ...原创 2018-05-10 14:14:05 · 18543 阅读 · 0 评论