HTTP 入门:从一次请求看懂前后端如何对话
打开浏览器,输入一个网址,按下回车,页面很快就出现了。这个看似简单的动作,背后其实是一次完整的前后端对话。浏览器是发起请求的客户端,服务器是处理请求的另一端,而 HTTP 就是它们约定好的交流语言。跟着一次请求走完全程,就能看清数据从哪里来、到哪里去。
一、从地址栏开始
一次请求通常从网址开始。网址里包含协议、主机名和路径:协议说明用什么方式对话,主机名说明要找哪台服务器,路径说明想要哪一份资源。浏览器先把主机名解析成服务器的网络地址,再建立连接,就像先找到门牌号,再敲门一样。
二、请求报文长什么样
浏览器发出的请求主要由请求行、请求头和请求体组成。请求行说明方法和路径,例如获取页面常用 GET,提交表单常用 POST。请求头是补充信息,比如希望返回什么类型的内容、使用什么语言。请求体在提交数据时才出现,例如表单里填写的文字。
三、服务器收到请求后做什么
服务器收到请求后,先判断路径是否存在、方法是否允许、参数是否完整,再决定由哪一段程序处理。有的请求只是读取一篇文章,有的请求需要查询数据、校验输入、生成结果。处理完成后,服务器把结果组织成响应,返回给浏览器。这就是后端的主要工作:接收、判断、处理、返回。
四、响应报文里有什么
响应同样由状态行、响应头和响应体组成。状态行里的状态码最值得留意:200 表示成功,301 和 302 表示地址变了,404 表示找不到资源,500 表示服务器内部出了问题。响应头说明内容类型、长度和缓存策略。响应体才是真正的内容,可能是网页文档,也可能是结构化的数据。
五、前端拿到数据后做什么
浏览器收到响应后,先看内容类型。如果是网页文档,就解析结构和样式,加载图片和脚本,再把页面画出来;如果是结构化数据,前端程序就把它填进列表、卡片和表单。用户看到的刷新和切换,背后往往都是一次或多次请求。前端的工作,更多是把数据变成人能看懂、能操作的界面。
结语
HTTP 并不神秘,它就是浏览器和服务器之间的一套问答规则:浏览器说出想要什么,服务器回答能不能给、给什么。前端负责提出清晰的请求并把结果呈现出来,后端负责判断请求并给出可靠的答案。看懂这一次对话,再去学习接口设计、缓存策略和安全传输,都会容易很多。
- 点赞
- 收藏
- 关注作者
评论(0)