《面试官:你如何理解HTTP协议?》

简介: 《面试官:你如何理解HTTP协议?》

http是基于TCP/IP的超文本互联网传输协议,协议是什么呢?就是至少两个以上的参与者,比如你和房东的租房协议,http协议就是用户客户端与web服务器之间的协议,制定了传输的规则。超文本是什么呢?就是吧超文本转成二进制通过http发送,在互联网的早期,文本只是简单的文字信息,发展到今天,已经包含图片,音频,视频等。

 

http有三点注意事项:


(1) http是无连接:含义是每次只有一次请求,客户端请求完之后,服务端会直接断开连接。这种方式优点是可以节约传输时间。

(2) http是媒体独立的:意味着,只要客户端和服务端知道和可以解析的数据内容,都是可以通过http发送的。

(3) http是无状态的:无状态表示对事物的处理没有记忆力,缺少状态意味着,如果后面的数据需要处理前一次发送的数据,需要重新发送,导致数据量增大。另外,如果服务器不需要之前的数据,则应答就会较快。

 

下面介绍一下经常使用的请求,只要有GET,POST,DELETE等。


GET请求指定页面信息,返回消息实体。

POST一般提交数据资源进行处理,一般会发生建立或者修改资源。

GET和POST请求的区别主要GET请求长度有大小限制,POST没有。GET是暴露的,POST相对来说更加安全。GET速度更快,一次直接返回,POST需要两次,第一次确定消息是否收到,第二次再发送数据。

DELETE表示向服务器发送一个删除请求。

 

常用返回码有哪些呢?


200-请求成功。

301-资源(网页等)被永久转移到其他url。

404-请求资源不存在。

500-内部服务器错误。

相关文章
|
7天前
|
开发框架 前端开发 应用服务中间件
基于RFC6265 (HTTP状态管理协议)实现简单的登录系统
基于RFC6265 (HTTP状态管理协议)实现简单的登录系统
11 0
|
9天前
|
安全 前端开发 中间件
中间件中HTTP/HTTPS 协议
【6月更文挑战第3天】
14 3
|
9天前
|
程序员 API 开发者
Socket与HTTP协议的实践
【6月更文挑战第4天】本文介绍了Python中的网络编程,包括Socket编程和基于HTTP协议的实践。Socket编程是网络通信的基础,Python的`socket`模块简化了其使用。文中展示了服务器和客户端的简单示例,以及如何通过多线程处理多个客户端连接。另外,文章讨论了HTTP协议,推荐了`requests`库,并给出了发送GET和POST请求的例子。最后,总结了Socket编程和HTTP协议在网络编程中的应用及其在Web开发和API交互中的重要性。
16 5
|
11天前
|
传感器 物联网
物联网协议概述:MQTT、CoAP 和 HTTP
【6月更文挑战第3天】探索物联网的三大协议——MQTT、CoAP 和 HTTP。MQTT 是高效的消息传递使者,适用于大规模、不稳定网络环境;CoAP 小巧灵活,适合资源有限的设备;HTTP 则是熟悉的网络通信老将。根据不同场景选择合适的协议,让物联网设备有效交流。示例代码展示它们的使用方式。
28 0
|
14天前
|
网络协议 开发者 UED
【计算巢】HTTP/2 与 HTTP/3:下一代 Web 协议的优势
【5月更文挑战第31天】HTTP/2 & HTTP/3,两大网络协议超级英雄,通过二进制分帧、多路复用提升效率,QUIC协议让HTTP/3实现更快连接与低延迟。代码示例展示HTTP/2高效请求,它们为用户带来更快加载速度,改善体验,尤其利于高延迟应用。对开发者意味着更高性能,为网站注入超级引擎。未来,它们将在更多领域发挥作用,点亮数字世界。
|
14天前
|
Oracle Java 关系型数据库
http 协议深入介绍(二)
http 协议深入介绍(二)
|
14天前
|
网络协议 前端开发 应用服务中间件
http 协议深入介绍(一)
http 协议深入介绍(一)
|
16天前
|
缓存 安全 网络协议
HTTP协议中Via的用法
【5月更文挑战第29天】Web请求通过代理服务器的情况,强调了随着代理的普及,追踪报文流以解决网络问题的重要性。
|
16天前
|
存储 安全 前端开发
HTTP 协议 与HTTPS
HTTP 协议 与HTTPS
|
16天前
|
存储 前端开发 JavaScript
应用层协议 HTTP
应用层协议 HTTP