HTTP协议相关

HTTP协议与DNS服务、TCP协议及IP协议之间的关系

HTTP协议与DNS服务、TCP协议及IP协议之间的关系

HTTP与HTTPS的区别

  • HTTP的 URL 以http://开头,而HTTPS的 URL 以https://开头。
  • HTTP是不安全的,可能存在信息窃听或身份伪装等安全问题,而HTTPS是安全的。
  • HTTP的标准端口是80,而HTTPS的标准端口是443。
  • 在OSI网络模型中,HTTP工作于应用层,而HTTPS的安全传输机制工作于传输层。
  • HTTP无法加密,而HTTPS对传输的数据进行加密。
  • HTTP无需证书,而HTTPS需要CA机构颁发的SSL证书。

什么是HTTP无状态协议?如何解决HTTP无状态协议?

HTTP协议自身不对请求和响应之间的通信状态进行保存。也就是说在HTTP这个级别,协议对于发送过的请求或响应都不做持久化处理。这是为了更快地处理大量事务,确保协议的可伸缩性。

通过引入Cookie技术,实现对请求和响应之间的通信状态的持久化处理。

URI和URL的区别

  • URI(Uniform Resource Identifier)是统一资源标识符;URL(Uniform Resource Location)是统一资源定位符
  • URI是由某个协议方案表示的资源的定位标识符,用字符串表示某一互联网资源,而URL表示资源的地点(互联网上所处的位置),可见URL是URI的子集
  • 在Java的URI中,一个URI实例可以代表绝对的,也可以代表相对的,只要它符合URI的语法规则。而URL类不仅符合语义,还包含了定位该资源的信息,因此它不能是相对的。
  • 在Java类库中,URI类不包含任何访问资源的方法,它唯一的作用就是解析;而URL类可以打开一个到达资源的流。
  • URI一般由以下几部分组成
    • 登录信息(认证):指定用户名和密码作为从服务器端获取资源时必要的登录信息(身份认证)。此项是可选项。
    • 服务器地址:使用绝对URI必须指定待访问的服务器地址。地址可以是DNS可解析的域名、IPV4地址名、IPV6地址名。
    • 服务器端口号:指定服务器连接的网络端口号。此项也是可选项,若用户省略则自动采用默认端口号。
    • 带层次的文件路径:指定服务器上的文件路径来定位特指的资源。
    • 查询字符串:针对已指定的文件路径内的资源,可以使用查询字符串传入任意参数。此项也是可选项。
    • 片段标识符:可标记出已获取资源中的子资源(文档内的某个位置)。此项也是可选项。

常用的HTTP方法

HTTP方法用途
GET用来请求访问已被URI识别的资源
POST用来传输实体的主体
PUT传输文件
HEAD获得报文首部,不返回报文主体部分。用于确认URI的有效性及资源更新的日期时间等
DELETE按请求URI删除指定的资源,如文件等
OPTIONS用来查询针对请求URI指定的资源支持的方法

常见的HTTP状态码

状态码状态码英文名称中文描述
200OK请求被正常处理
204No Content请求已成功处理,但在返回的响应报文中不包含实体的主体部分
206Partial Content客户端进行了范围请求,而服务器成功执行了这部分的GET请求。
响应报文中包含由Content-Range指定范围的实体内容
301Moved Permanently永久性重定向
302Found临时性重定向
303See Other由于请求对应的资源存在着另一个URI,明确表示客户端应当采用GET方法定向获取请求的资源
304Not Modified服务器端资源未改变,可直接使用客户端未过期的缓存
307Temporary Redirect临时重定向,与302类似,但强制要求使用POST方法
400Bad Request请求报文中存在语法错误,导致服务器无法识别
401Unauthorized请求需要认证
403Forbidden对请求资源的访问被服务器拒绝
404Not Found服务器上无法找到请求的资源
406Not Acceptable后台返回的结果前台无法解析
415UnSupported Media Type不支持的媒体类型
500Internal Server Error服务器内部错误
502Bad Gateway网关错误
503Service Unavailable服务器正忙

HTTP/1.1版本新特性

  • 持久连接:所有连接默认都是持久连接,节省通信量。即只要任意一端没有明确提出断开连接,则保持TCP连接状态
  • 管线化:支持同时并行发送多个请求,而不用一个接一个地等待响应了
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值