Java学习笔记(六十八)—— HTTP

概念
  • HTTP协议(HyperText Transfer Protocol,超文本传输协议),是因特网上应用最为广泛的一种网络传输协议,所有的WWW文件都必须遵守这个标准。
    • 传输协议:定义了客户端和服务器端通信时,发送数据的格式
    • 特点:
      • 基于TCP/IP的高级协议
      • 默认端口号是:80
      • 基于请求/响应模型:一次请求对应一次响应
      • 无状态的:每次请求之间相互独立
    • 版本
      • 1.0:每次请求响应都会建立新的连接
      • 1.1:复用连接
请求消息数据格式
  1. 请求行
    请求方式 请求url 请求协议/版本
    GET /login.html HTTP/1.1
    • 请求方式
      • HTTP协议有7中请求方式,常用的有2种
        • GET:
          • 请求参数在请求行中,url后。
          • 请求的url有长度限制
          • 不太安全
        • POST:
          • 请求参数在请求体中。
          • 请求的url没有限制
          • 相对安全
  2. 请求头
    请求头的名称:请求头值
    • 常见的请求头
      • User-Agent:告诉服务器,访问使用的浏览器版本信息
        可以在服务器端获取该头的信息,来解决浏览器的兼容性问题
      • Referer: 告诉服务器,当前的请求从哪里来
        • 防盗链
        • 统计的工作
  3. 请求空行
    空行
  4. 请求体
响应消息数据格式
  • 数据格式:
  1. 响应行
    1.1 组成:协议/版本 响应的状态码 状态码描述
    1.2 状态码:服务器告诉浏览器本次请求和响应的一个状态
    1.2.1 状态码都是3位数字
    1.2.2 分类:
    1. 100~199:服务器接收客户端消息,但没有全部接收完,等带一段时间后,发送状态码
    2. 200~299:成功,代表:200
    3. 300~399:重定向,代表:302(重定向)、304(访问缓存)
    4. 400~499:客户端错误,代表:404(请求路径没有对应的资源)、405(请求方式没得对应的方法doxxx)
    5. 500~599:服务器端错误,代表:500(服务器内部出现异常)
  2. 响应头
    2.1 格式:头名称 : 值
    2.2 常见的响应头:
    • Content-Type:服务器告诉客户端本次响应体的数据格式及编码格式
    • Content-disposition:服务器告诉客户端以什么格式打开响应体数据
    * 值:
    	* in-line:默认值,在当前页面打开
    	* attachment;filename=xxx:以附件形式打开响应体。文件下载
  3. 响应空行
  4. 响应体:传输的数据
发布了113 篇原创文章 · 获赞 1 · 访问量 921

猜你喜欢

转载自blog.csdn.net/weixin_44876003/article/details/103464509
今日推荐