计算机网络-HTTP相关知识-基础

HTTP基础

  • 基本概念:HTTP是一种计算机之间交流通信的规范,它允许数据在两点之间传输,这个过程可以包括中转或接力。HTTP不仅仅包括文本,还可以包括图片、音频等超文本。
  • 状态码:HTTP状态码分为五类:
    • 2xx:表示请求成功。例如,200 OK是最常见的成功状态码,表示请求已成功处理;204 No Content表示响应成功但响应头没有body数据。
    • 3xx:表示需要重定向。例如,301 Moved Permanently表示请求的资源已经不存在,需要永久重定向;302 Found表示请求的资源还在,但暂时需要用另一个URL来访问;304 Not Modified表示资源未修改,可以重定向到已存在的缓冲文件。
    • 4xx:表示客户端请求报文有误。例如,400 Bad Request表示请求报文存在语法错误;403 Forbidden表示服务器禁止访问该资源;404 Not Found表示请求的资源在服务器上不存在或未找到。
    • 5xx:表示服务器内部错误。例如,500 Internal Server Error表示服务器内部错误;501 Not Implemented表示服务器不支持当前请求所需要的某个功能;502 Bad Gateway表示服务器作为网关或代理时,从上游服务器接收到的响应是无效的。
  • 常见字段:HTTP报文中包含多种字段,如Host(表示请求的域名)、Content-Length(表示本次回应数据长度)、Connection(表示是否需要长连接)、Accept(表示客户端接受什么格式的数据)、Accept-Encoding(表示客户端接受什么压缩格式的数据)、Content-Type(表示数据的格式和编码方式)、Content-Encoding(表示数据的压缩方式)和User-Agent(表示用户代理,可以通过它来知道请求方是浏览器、爬虫等等)。

HTTP请求方法

  • GET:GET方法从服务器获取指定的资源,请求的参数通常写在URL中。GET是安全且幂等的,这意味着无论进行多少次操作,结果都是相同的。因此,可以对GET请求的数据做缓存。
  • POST:POST方法根据请求负荷(报文body)对指定的资源做出处理,请求的数据通常写在报文body中。POST既不安全也不幂等,因此,不能对POST请求的数据做缓存。

HTTP缓存技术

  • 强制缓存:如果浏览器判断缓存没有过期,则直接使用浏览器的本地缓存。强制缓存的决定权在浏览器这边,只要浏览器判断缓存没有过期,就会直接使用缓存,而不会向服务器发送请求。强制缓存可以通过设置Cache-Control或Expires字段来实现。
  • 协商缓存:只有在未能命中强制缓存的时候,才能发起带有协商缓存字段的请求。协商缓存可以通过两种方法实现:一种是通过If-None-Match字段带上上次响应头部中的Etag字段(唯一标识响应资源),由服务端比对资源;另一种是通过If-Modified-Since字段带上上次响应头部中的Last-Modified字段(上次修改时间),由服务端比对时间。如果服务器判断资源没有变化,则返回304状态码,告诉客户端可以使用本地缓存文件。
  • 15
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值