JavaWeb与HTTP协议
Web和JavaWeb的概念
Web是全球广域网,也称为万维网(www),能够通过浏览器访问的网站。
在我们日常的生活中,经常会使用浏览器去访问百度、知乎、推特等这些网站,这些网站统称为Web网站。
我们知道了什么是Web,那么JavaWeb又是什么呢?顾名思义JavaWeb就是用Java技术来解决相关Web互联网领域的技术栈。
HTTP 概念
HTTP(HyperText Transfer Protocol):超文本传输协议,规定了浏览器和服务器之间数据传输的规则。
HTTP 协议特点
基于TCP协议:面向连接,安全可靠。
请求-响应模型:每次请求对应一次响应,客户端发送请求,服务器返回响应。
无状态协议:每次请求都是独立的,服务器不会记住之前的请求数据。(你要想买商品加购物车,结算的时候就不能用这个,有缺点)
缺点:多次请求之间不能共享数据。
优点:速度快。
解决方法:Java中可以用会话技术(如Cookie、Session)来实现数据共享。
一句话总结:
HTTP是一种基于TCP、采用请求-响应模式、无状态的通信协议,主要用于浏览器和服务器之间的数据传输。
HTTP请求数据格式
一、请求数据的三部分
请求行:第一行,包含请求方式(如GET/POST)、资源路径、协议版本。
请求头:从第二行开始,格式为 key: value,描述客户端环境、能力等信息。
请求体:仅POST请求有,用于存放请求参数。
二、常见HTTP请求头
Host:请求的主机名
User-Agent:浏览器的标识和版本
Accept:浏览器能接收的资源类型
Accept-Language:浏览器偏好的语言
Accept-Encoding:浏览器支持的压缩类型
三、GET与POST请求区别
GET:参数写在请求行(URL)中,没有请求体,参数有长度限制。
POST:参数写在请求体中,没有长度限制。
一句话总结:
HTTP请求由请求行、请求头、请求体三部分组成,GET和POST的参数位置和大小限制不同,常用请求头描述了客户端的环境和能力。
get
post