超文本传输协议,用于传输web资源,通常用于客户端和服务器之间的交互。和护短发出的叫request服务端返回的叫response。
它位于应用层,通过TCP,或者TLS加密的TCP连接来发送。

基本性质

  • 简单的:简单易读,对新人友好。
  • 可扩展:可以自定义header。
  • 无状态,有会话的:即便是同一接口,两次请求之间也是没有关系的。加入Cookies后可以创建有状态的会话。

    GET和POTS区别

  • GET在浏览器回退时是无害的,而POST会再次提交请求。

  • GET产生的URL地址可以被Bookmark,而POST不可以。
  • GET请求会被浏览器主动cache,而POST不会,除非手动设置。
  • GET请求只能进行url编码,而POST支持多种编码方式。
  • GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。
  • GET请求在URL中传送的参数是有长度限制的,而POST么有。
  • 对参数的数据类型,GET只接受ASCII字符,而POST没有限制。
  • GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息。
  • GET参数通过URL传递,POST放在Request body中。

    HTTPS

    因为HTTP是明文传输的,为了安全考虑HTTPS由此产生。HTTPS就是HTTP加SSL/TLS在HTTP和TCP中间加了一层安全层。