【JavaWeb-04】HTTP

简介: 【JavaWeb-04】HTTP

4. HTTP

4.1 什么是HTTP

HTTP(超文本传输协议)是一个简单的请求-响应协议,它通常运行在TCP之上。

  • 文本:html、字符串
  • 超文本:图片、音乐、视频等
  • 端口:80

HTTPS:安全的

  • 443

4.2 两个时代

  • http1.0
  • HTTP/1.0:客户端可以与web服务器连接,只能获得一个web资源,断开连接
  • http2.0
  • HTTP/1.1:客户端可以与web服务器连接后,可以获得多个web资源

4.3 HTTP请求

  • 客户端 — 发请求(Request) — 服务器

百度:

Request URL:https://www.baidu.com/    请求地址
Request Method:GET    get方法/post方法
Status Code:200 OK    状态码: 200
Remote (远程) Address :14.215.177.39:443
Referrer Policy:no-referrer-when- downgrade
1. 请求行
  • 请求行中的请求方式:GET
  • 请求方式:Get/Post
  • Get:请求能够携带的参数比较少,大小有限制,会在浏览器的URL地址栏显示数据内容,不安全,但高效
  • Post:请求能够携带的参数比较少,大小有限制,会在浏览器的URL地址栏显示数据内容,不安全,但高效
2. 消息头
Accept:告诉浏览器,它所支持的数据类型
Accept-Encoding:支持哪种编码格式 GBK、UTF-8、GB2312
Accept-Language:告诉浏览器,他的语言环境
Cache-Control:缓存控制
Connection:告诉浏览器,请求完成是断开还是保持连接
HOST:主机

4.4 HTTP响应

  • 服务器 – 响应 – 客户端

百度:

cache-Contro1 :private    缓存控制
Connection:Keep-Alive   连接:保持连接
Content-Encoding :gzip    编码
Content-Type : text/htm1  类型
1. 响应体
Accept:告诉浏览器,它所支持的数据类型
Accept-Encoding:支持哪种编码格式 GBK、UTF-8、GB2312
Accept-Language:告诉浏览器,他的语言环境
Cache-Control:缓存控制
Connection:告诉浏览器,请求完成是断开还是保持连接
HOST:主机
Refresh:告诉客户端,多久刷新一次
Location:让网页重新定位
2.响应状态码
  • 200:请求响应成功
  • 3**:请求重定向
  • 重定向:你重新到我给你的新位置去
  • 404:找不到资源
  • 资源不存在
  • 5xx:服务器代码错误 500 502(网关错误)

常见面试题:

当你的浏览器中地址栏输入地址并回车的一瞬间到页面能够展示回来,经历了什么?

  • 将输入的域名转化为IP地址:本地缓存、浏览器缓存、路由器缓存、DNS查询
  • 浏览器向Web服务器发送 HTTP 请求:TCP的三次握手、Cookies随着请求发送给服务端
  • 服务器处理请求:处理请求和它的参数、cookies、生成一个 HTML 响应
  • 服务器返回一个HTML响应
  • 携带的数据渲染至浏览器页面,进行呈现


相关文章
|
7月前
|
XML Java 数据格式
Servlet 教程 之 Servlet 客户端 HTTP 请求 3
该教程展示了如何在Servlet中处理客户端HTTP请求,特别是获取HTTP头信息。示例代码创建了一个名为`DisplayHeader`的Servlet,它扩展了`HttpServlet`并重写了`doGet`方法。在`doGet`中,使用`HttpServletRequest`的`getHeaderNames()`遍历所有头部,显示其名称和对应值。Servlet在TomcatTest项目下,通过`web.xml`配置映射到`/TomcatTest/DisplayHeader`路径。
65 14
|
7月前
Servlet 教程 之 Servlet 服务器 HTTP 响应 2
Servlet教程讲解了如何通过HttpServletResponse设置HTTP响应,包括编码URL、添加cookie、设置报头、控制缓冲区、发送错误或重定向响应。方法如encodeURL、addCookie、sendError、sendRedirect等,涉及状态码、报头、字符编码和内容长度的管理。
70 2
|
XML IDE Java
Javaweb之Http协议andTomcatandServelt的内容~1
Javaweb之Http协议andTomcatandServelt的内容~
|
7月前
|
安全 Java 网络安全
Servlet 教程 之 Servlet 客户端 HTTP 请求 2
Servlet教程介绍了如何在Servlet中处理HTTP请求,包括获取Cookie、头信息、参数、Session等。方法如:`getCookies()`、`getAttributeNames()`、`getHeaderNames()`、`getParameterNames()`等。还能获取身份验证类型、字符编码、MIME类型、请求方法、远程用户信息、URL路径、安全通道状态以及请求内容长度等。此外,可通过`getSession()`创建或获取Session,并以`Map`形式获取参数。
67 8
|
7月前
|
XML Java 数据格式
Servlet 教程 之 Servlet 服务器 HTTP 响应 3
`Servlet`教程示例展示了如何创建一个HTTP响应,使用`@WebServlet("/Refresh")`的`Refresh`类继承`HttpServlet`。在`doGet`方法中,设置了`Refresh`头以每5秒自动刷新,并用`setContentType("text/html;charset=UTF-8")`设定内容类型。还使用`Calendar`和`SimpleDateFormat`获取并格式化当前时间显示。相应的`web.xml`配置指定了Servlet路径。当访问此Servlet时,页面将每5秒更新一次显示的系统时间。
63 4
|
7月前
|
存储 缓存
Servlet 教程 之 Servlet 服务器 HTTP 响应 1
Servlet服务器的HTTP响应包括状态行(如HTTP/1.1 200 OK)、响应头部(如Content-Type, Cache-Control)和HTML文档。关键头部有:Allow指示支持的请求方法;Cache-Control定义缓存策略;Content-Type指定MIME类型;Expires和Last-Modified管理缓存;Location用于重定向;Set-Cookie用于设置cookie。
59 8
|
7月前
Servlet 教程 之 Servlet 客户端 HTTP 请求 1
Servlet教程讲解了客户端HTTP请求,包括各种重要头信息:Accept(定义可处理的MIME类型)、Accept-Charset(指定字符集)、Accept-Encoding(处理的编码类型)、Accept-Language(首选语言)、Authorization(身份验证)、Connection(是否支持持久连接)、Content-Length(POST数据大小)、Cookie(返回cookies)、Host(指定URL的主机和端口)、If-Modified-Since(检查页面更新)、If-Unmodified-Since(条件性操作)。
43 0
|
IDE Java 应用服务中间件
Javaweb之Http协议andTomcatandServelt的内容~2
Javaweb之Http协议andTomcatandServelt的内容~
|
Web App开发 存储 网络协议
【JavaWeb】一篇文章学会HTTP
【JavaWeb】一篇文章学会HTTP
|
JSON 缓存 前端开发
【JavaWeb】HTTP协议解析
【JavaWeb】HTTP协议解析
【JavaWeb】HTTP协议解析