【教程】HTTP协议快速学习

备注

2021/4/1 星期四
以前已经学过一点简单的http协议了,但是一知半解,在这个网络时代http协议太重要了,准备再重新学习一下。

一、HTTP协议概述

http(Hypertext Transfoer Protocol)协议,叫做超文本传输协议,是tcp/ip协议中的应用层协议, 是一种无状态的协议(每次请求都是独立的与之前的请求没有任何相关性),默认端口为80。

  • 一个完整的网页访问过程:浏览器根据域名解析IP地址->浏览器与WEB服务器建立一个TCP连接->浏览器给WEB服务器发送一个HTTP请求->服务器端响应HTTP请求,浏览器得到HTML代码->浏览器解析HTML代码,并请求HTML代码中的资源->关闭TCP连接,浏览器对页面进行渲染呈现给用户

二、http报文格式

用于http交互的信息叫做http报文,请求端发出的http报文叫做请求报文,响应端答复的叫做响应报文。
一个http报文由报文首部、空行、报文主体三部分组成

1.请求报文(Request Message)

请求报文的首部由请求行和首部字段组成
request
例如
message

2.响应报文(Response Message)

响应报文的首部由状态行和首部字段组成
response
例如
message

三、 协议版本

目前常见的http协议一共有四个版本

  • http/0.9
    最初版本,功能简陋,仅支持GET方法,仅能请求访问HTML格式的资源。
  • http/1.0
    在0.9的版本上做了修改,新增POST和HEAD方法,同时也开始支持更多种数据格式新增状态码、多字符集支持、多部分发送、权限、cache访问、内容编码等。
  • http/1.1
    目前被广泛使用的版本,引入了持久连接、管道机制,新增六种请求方式
  • http/2.0
    最新提出的版本,主要为解决1.1版本效率较低的问题,目前还没有被广泛使用

四、请求行(Request Line)

http请求报文的第一行称为请求行,请求行由请求方法、URL、协议版本和换行符组成

1. 请求方法

在http1.0中只定义了三种方法GET、POST和HEAD,http1.1中 新增了六种

方法详情
GET用于获取资源,请求指定的页面信息,并返回实体主体。
POST用于传输实体主题,向指定资源提交数据进行处理请求,如提交表单或者上传文件
HEAD与GET类似,不过返回具体的内容,只用于获取报头确认URL的有效性及资源更新的日期时间
OPTIONS用来查询请求URL指定的资源支持的方法。
PUT类似FTP协议的文件上传,将请求报文主体中包含的文件内容保存到请求URL指定的位置
DELETE与PUT相反,用来将指定URL位置的文件删除
PATCH对某个资源做部分修改
TRACE追踪一个资源请求中间所经过的代理
CONNECTHTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。

2. URL

URL(Uniform Resource Locator)叫统一资源定位器,是网络每一信息资源都有的在网上唯一的地址。

五、状态行(Statuse Line)

http响应报文的第一行称为状态和行,状态行由协议版本、状态码、状态信息和换行符组成

1.状态码类别

代码类别详情
1XXInformational(信息性状态码)请求正在处理
2XXSuccess(成功状态码)请求正常处理完毕
3XXRedirection(重定向状态码)需要进行附加操作
4XXClient Error(客户端错误状态码)服务器无法处理请求
5XXSever Error(服务器错误状态码)服务器处理请求出错

2.常见状态码

状态码状态信息详情
200OK请求被正常处理了
204No Content请求成功处理,但响应报文不含实体主体
206Partial Content响应客户端的范围响应,并成功返回指定范围的实体内容
301Moved Permanently永久重定向,资源已被分配新的URI,希望以后使用新的URI访问
302Found临时重定向,希望本次使用新的URI访问
303See Other与302Found相似,但要求客户端使用GET方式访问资源
304NotModified请求不满足条件,返回结果不包含主体,这一代码实际也和重定向没有关系
307Temporary Redirect临时重定向,与302Found相似
400BadRequest报文中有语法错误,需要修改后重发
401Unauthorized请求需要认证或认证失败
403Forbidden请求的资源被拒绝,服务器没必要做出解释,但也可以在主体中给出解释
404Not Found没有找到请求的资源,也可以当作403Forbidden使用
500Internal Server Error服务器发生错误
503Service Unavailable服务器超载或停机维护

六、首部字段总结

首部字段是http报文中的重要内容,首部字段可以提供报文主体大小、所使用的语言、认证信息等内容。首部字段分为四种。

1.通用首部字段(General Header Fields)

字段名说明
Cache-Control控制缓存的行为
Connection逐跳首部、连接的管理
Date创建报文的日期时间
Pragma报文指令
Trailer报文末端的首部一览
Transfer-Encoding指定报文主体的传输编码方式
Upgrade升级为其他协议
Via代理服务器的相关信息
Warning错误通知

2.请求首部字段(Request Header Fields)

字段名说明
Accept用户代理可处理的媒体类型
Accept-Charset优先的字符集
Accept-Encoding优先的内容编码
Accept-Language优先的语言(自然语言)
AuthorizationWeb认证信息
Expect期待服务器的特定行为
From用户的电子邮箱地址
Host请求资源所在服务器
If-Match比较实体标记(ETag)
If-Modified-Since比较资源的更新时间
If-None-Match比较实体标记(与 If-Match 相反)
If-Range资源未更新时发送实体 Byte 的范围请求
If-Unmodified-Since比较资源的更新时间(与If-Modified-Since相反)
Max-Forwards最大传输逐跳数
Proxy-Authorization代理服务器要求客户端的认证信息
Range实体的字节范围请求
Referer对请求中 URI 的原始获取方
TE传输编码的优先级
User-Agent HTTP客户端程序的信息

3.响应首部字段(Response Header Fields)

字段名说明
Accept-Ranges是否接受字节范围请求
Age推算资源创建经过时间
ETag资源的匹配信息
Location令客户端重定向至指定URI
Proxy-Authenticate代理服务器对客户端的认证信息
Retry-After对再次发起请求的时机要求
ServerHTTP服务器的安装信息
Vary代理服务器缓存的管理信息
WWW-Authenticate服务器对客户端的认证信息

4.实体首部字段(Entity Header Fields)

字段名说明
Allow资源可支持的HTTP方法
Content-Encoding实体主体适用的编码方式
Content-Language实体主体的自然语言
Content-Length实体主体的大小(单位:字节)
Content-Location替代对应资源的URI
Content-MD5实体主体的报文摘要
Content-Range实体主体的位置范围
Content-Type实体主体的媒体类型
Expires实体主体过期的日期时间
Last-Modified资源的最后修改日期时间
  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: UDS诊断协议是一种通用的诊断协议,用于执行诊断功能和运行控件单元。UDS协议也是ISO 14229标准的一部分,它是一种用于与车辆ECU进行通信的标准通信协议。本文介绍了如何快速入门UDS诊断协议。 首先,我们需要了解UDS协议的基本概念和术语。UDS协议中有几个重要的术语包括传输层、会话层、诊断层以及识别码。了解这些术语将有助于我们更好地理解UDS协议的工作原理。 其次,我们需要掌握UDS协议的消息格式。UDS协议中的消息格式由几个部分组成,包括服务识别码、数据长度、数据和响应代码。通过了解这个消息格式,我们可以更好地理解UDS协议中各个部分的作用。 最后,我们需要了解UDS的一些常见服务和命令。UDS协议中包括许多不同的服务和命令,例如读取故障码、清除故障码、发送诊断命令等。通过了解这些常见服务和命令,我们可以更好地应用UDS协议进行车辆诊断和控制。 总之,通过阅读UDS诊断协议快速入门PDF,我们可以了解UDS协议的基本概念、消息格式和常见服务和命令,进而更好地应用UDS协议进行车辆诊断和控制。 ### 回答2: UDS诊断协议是当前汽车电子控制系统诊断的通用标准协议,其主要作用是实现诊断设备与汽车电子控制系统之间的通信与数据交换。对于汽车诊断技术从业人员来说,熟练掌握UDS协议的使用及其原理就显得尤为重要。 而《UDS诊断协议快速入门PDF》就是针对UDS诊断协议使用者所编写的一份教程材料,旨在帮助初学者快速掌握UDS协议的使用技巧。 本教程内容包括:UDS协议的介绍、基础概念的讲解、UDS会话的建立、诊断服务的分类、UDS服务的具体实现及其使用实例等等;同时还介绍了相关诊断设备的硬件和软件架构,以及常见的应用场景和注意事项等内容。 总的来说,《UDS诊断协议快速入门PDF》对于想要学习和掌握UDS诊断协议的从业人员来说,是一份非常有用的教程材料,可以帮助他们更加有效地实现汽车电子控制系统的诊断与故障排除,提高自身的技术水平和工作效率。 ### 回答3: uds诊断协议是一种广泛应用于汽车行业的通信协议,它为故障诊断、程序更新等提供了标准化的通信方式。uds诊断协议快速入门pdf是一份针对初学者的入门指南,通过简单易懂的语言和丰富的示例,帮助读者了解uds协议的基础知识和应用场景,具体内容包括: 1. uds协议的基础概念和结构,包括诊断会话、功能请求、响应报文等; 2. uds协议的通信流程和数据传输方式,包括CAN总线和ISO 14229标准; 3. uds协议支持的功能服务和特殊功能服务,包括ECU诊断、编程/重置/初始化、信息查询等; 4. uds协议的应用范围和限制,包括OBD、ECU编程、安全性等方面的考虑。 该pdf指南还提供了一些常见问题的解决方案,以及对uds协议未来发展趋势的展望。通过学习这份快速入门指南,读者可以掌握uds协议的基础知识,为后续的学习和应用打下更加坚实的基础。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值