这是我参与「第三届青训营 -后端场」笔记创作活动的第3篇笔记。
前言
作为本科学习大数据的学生,对于HTTP框架的了解可以说是相当皮毛,大概知道请求响应,通过它,网页才能获取和渲染信息。我个人很喜欢青训营的这节讲HTTP的课,深入浅出,所以本篇笔记就结合个人思考,更是总结一下HTTP框架的重要内容。
什么是HTTP
http全称是Hyper Text Transfer Protocol,中文释义超文本传输协议,那么是在什么之间传输呢?如果是上网浏览网页,那就是在浏览器和web服务器之间传输;如果是是用户在客户端进行活动,那就是在客户端和服务端之间传输,两者的本质是相同的,也就是说,http是一个“客户端-服务器端”协议。简单理解,客户端指用户使用的,需要数据并因此发出请求的计算机,服务器端指响应用户请求,发送数据给客户端的计算机。
HTTP有哪些组成部分
既然是业界公认且广泛使用的协议,它的组成部分一定是有严格规定的。上文提到客户端发送请求,这个http请求报文包括请求行,请求头,请求体组成,相应地,服务端发送给客户端的响应报文包括状态行,响应头以及响应体。请求行包括方法名,URL和协议版本(1.1使用最广泛)。方法名有很多,本次项目中主要用到了POST和GET。POST用于向服务端发送数据,传输实体主体,像我这次负责的评论部分,其中新增一条评论或者删除某条评论就是POST接口类型,而获取一个视频完整的评论列表就是GET接口类型。状态行包括协议版本,状态码和状态码描述。请求头主要涵盖了一些客户端相关的环境和请求正文相关内容,响应头也类似。
有关HTTP性能方面的内容老实讲还是云里雾里,但是对于HTTP框架的基本了解帮助了我后续写代码的工作,最基本的要了解请求和响应是严格按照格式对应起来的。