Java Web程序设计——HTTP协议

Java Web程序设计——HTTP协议

同理,放上思维导图
在这里插入图片描述

HTTP概述

HTTP介绍
  • HTTP是HyperText Transfer Protocol的缩写,即超文本传输协议。简单来说就是规范了浏览器和服务器交互或通信的规则。
  • 客户端与服务器在HTTP协议下的交互过程
    在这里插入图片描述
HTTP协议的特点
  • 支持客户端(浏览器就是一种客户端)或服务器模式
  • 客户端向服务器请求时,只需传送请求方式和路径
  • HTTP允许传输任意类型的数据,正在传输的数据类型由Content-Type加以标记
  • HTTP是无状态协议。无状态是指协议对于事务处理没有记忆能力
HTTP 1.0和HTTP 1.1
  • HTTP 1.0通信基制,每次从浏览器向服务器发送请求,都需要建立一个新的TCP连接
  • HTTP 1.1建立一个TCP连接,可以发送多个请求,服务器在做出多个响应后,最后关闭这个TCP连接
HTTP消息
  • HTTP请求消息和HTTP响应消息统称为HTTP消息

HTTP请求消息

  1. 请求行:GET /index.html HTTP/1.1 位于请求消息的第一行
    包括请求方式GET,资源路径index.html,HTTP/1.1协议版本

以下是一些请求方式:

  • GET:请求获取请求行的URI所标识的资源
  • POST:想指定资源提交数据,请求服务器进行处理,比如,提交表单或上传文件
  • HEAD:请求获取由URI所标识资源的响应消息头
  • PUT:将网页放置到指定URI位置
  • DELETE:请求服务器删除URI所标识的资源
  • TRACE:请求服务器回送收到的请求信息,主要用于测试或诊断
  • CONNECT:保留将来使用
  • OPTIONS:请求查询服务器的性能,或者查询与资源相关的选项和需求
    注:1.最常用的是GET和POST方式
    2.GET请求没有请求正文,请求数据在浏览器的地址栏
    3.POST请求有请求正文,请求数据在请求正文里面
  1. 请求消息头
    请求行之后便是消息头,主要用于向服务器传递附加消息
    例如:(图片随便粘的)
    在这里插入图片描述
  • 每个请求消息头都是由一个头字段名称和一个值构成
  • 头字段名称和值之间用冒号(:)和空格( )分隔
  • 每个请求消息头之后使用一个回车换行符标志结束

以下是一些常见请求头字段:

  • Accept
  • Accept-Charset
  • Accept-Encoding
  • Accept-Language
  • Authorization
  • Proxy-Authorization
  • Host:请求资源主机的ip地址和端口号
  • If-Match
  • If-Modified-Since
  • Range
  • If-Range
  • Max-Forward
  • Referer:请求时从什么地方发起的(放置盗链)
  • User-Agent:浏览器的版本、类型及内核

ps:以上就不具体举例,详情请自行百度

HTTP响应消息

  1. HTTP响应状态行
  • HTTP响应状态行位于响应消息的第一行,代码:
HTTP/1.1 200 OK

HTTP 1.1:是通信使用的协议版本(200是状态码)
OK:表示状态描述,说明请求成功

以下详细说下HTTP中的状态码:

  • 1xx:表示请求已接收,需要继续处理
  • 2xx:表示请求已成功被服务器接收、理解、并接受
  • 3xx:为完成请求,客户端需进一步细化请求
  • 4xx:客户端的请求有错误
  • 5xx:服务器端出现错误

ps:以上无需记忆,以下来说常见的几个状态码:

  • 200:表示服务器成功处理了客户端的请求
  • 302:表示请求的资源临时从不同的URI响应请求。
  • 404:表示服务器找不到请求的资源
  • 500:表示服务器发生错误,无法处理客户端的请求
  1. HTTP响应消息头
    状态行完了就是若干响应消息头,服务器通过响应消息头向客户端传递附加信息
    例如:(同上图片随便粘的)
    在这里插入图片描述
    从上不难看出它们的格式和HTTP请求消息头的格式相同

以下是HTTP中常用的响应消息头字段:

  • Accept-Range
  • Age:缓冲的有效时间
  • Content-Disposition
  • Refresh:浏览器自动刷新时间
  • Etag
  • Location:获取请求文档的新地址
  • Retry-After
  • Server:指定服务器软件产品名称
  • Proxy-Authenticate
  • Vary
  • WWW-Authenticate

ps:同上,详情请自行百度

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值