【2021-07-30】Spring MVC学习笔记1-Spring Web MVC概述(HTTP Web基础知识)

HTTP Web基础知识

学习《Spring+Spring MVC+Mybatis整合开发实战》笔记


前言

  1. HTML(HyperText Markup Language,超文本标记语言)与HTTP(Hyper Text Transfer Protocol,超文本传输协议)
  2. HTTP请求类型:GET与POST
  3. MIME类型(Multipurpose Internet Mail Extensions,多用途互联网邮件扩展)
  4. 状态码:服务端返回相应状态的编码,由三位数字组成。

一、HTML与HTTP

HTML是一种标记语言,使用<html><head><title><body>等标签来开发网页。该类文档可以通过使用浏览器打开直接查看页面效果。

.html文档希望被更多人看到,需要将这个文档放在服务器上,通过BS模式(浏览器-服务器模式)进行开发和访问。服务器和浏览器的传输需要遵循一定的规则彼此才能认识和沟通,这个规则就是HTTP协议

HTTP是位于应用层的协议,在此协议下,浏览器端发出一个遵循协议的请求,服务器返回浏览器可以识别的响应。在浏览器端,通过URL(Uniform Resource Locator,统一资源标识符)来建立连接和获取数据。

HTTP请求具体如下:

  • 请求行:包括请求类型(常见有GET与POST)、请求的资源地址(URL地址)和使用HTTP协议版本等信息。请求地址和请求类型是客户端请求需要指定的。
  • 请求头:包括客户端主机IP和端口(HOST)、浏览器信息(User-Agent)、客户端能接收的数据类型(Accept)、客户端字符编码集(Accept-charset)和Cookie等。
  • 请求体:也称为主体或消息体,为请求的参数。

HTTP协议响应消息:

  • 状态行:主要包括响应成功或失败的状态。
  • 相应头:包括服务器响应的内容类型和字符类型(Content-Type)、响应时间(date)、服务器类型(server)和响应内容的长度等。
  • 响应正文:响应给客户端的文本信息

二、HTTP请求类型

GET和POST这两种请求类型在使用上最大差异是参数传递方式的不同。

  • GET请求参数通过URL直接传递,放在HTTP的请求头中,以"?"分隔URL和参数数据,使用“=”连接参数变量和值,多个参数之间使用“&”分隔。
    如:http://localhost:8888/ssmi/login.action?name=myname&password=mypassword
  • POST请求的参数数据放在HTTP的请求体中,不会显示在地址中。请求体中的参数存在的格式也是key=value的键值对格式。

GET请求一般用于资源的获取(如打开某个页面),POST请求常用于资源的建立或修改(如提交表单或文件上传)。

三、MIME类型

MIME类型的定义由两部分组成,使用“/”分隔,前面是大类,后面是具体的类型。MIME主要的大类有Text、Application、Image、Audio、Video等。常见的具体MIME类型如下:

  • text/html:HTML格式文档
  • text/plain:纯文本格式
  • image/jpeg:JPEG格式的图片
  • image/gif:GIF格式的图片
  • application/vnd.ms-powerpoint:PPT文件
  • application/vnd.ms-excel:Excel文件
  • application/xml:xml文件
  • application/json:json文件
  • application/msword:Word文档格式
  • application/octet-stream:二进制流数据
  • application/x-www-form-urlencoded:From表单数据
  • multipart/form-data:文件上传的媒体格式类型
  • video/quicktime:Apple的QuickTime电影格式类型
    代码如下(示例):

四、状态码

首位数字定义响应类别:

  • 1xx:已接收,表示请求已接收并继续处理
  • 2xx:成功,表示请求被成功接受、处理与返回
  • 3xx:重定向,表示请求需要更进一步地处理
  • 4xx:客户端错误,一般是由于请求有语法错误或请求无法实现
  • 5xx:服务器端错误,一般是服务器未能处理合法的请求

常见状态代码有:

200:状态信息OK,请求和处理成功
400:状态信息Bad Request,错误的请求,客户端请求有语法错误,服务器不能理解
401:状态信息Unauthorized,请求未经授权
403:状态信息Forbidden,服务器接收到请求,但拒绝提供服务
404:状态信息Not Found,请求的资源不存在
500:状态信息Internal Server Error,服务器发生了内部错误
503:状态信息Server Unavailable,因服务器尚未开启等原因不能处理客户端的请求

总结

大概了解了HTTP Web的基础知识,但还存在较多困惑,只是记住了一些常见的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

兔耳袋狸Bilby

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值