WEB从前端到后端 工作流程究竟是什么样的?

本文参考/引用了以下文章:
https://www.cnblogs.com/xianyulaodi/p/6547807.html
https://blog.csdn.net/donggx/article/details/71402871#commentBox

从在浏览器输入一个网址到显示网站内容,这中间经历了什么?

下文中,浏览器即为客户端(Client),WEB Server即为服务器

假设我们现在输入一个百度的网址到浏览器的地址栏中:

  1. 输入域名:首先输入域名:www.baidu.com
  2. 解析域名获得IP:浏览器将域名发送到DNS(域名服务器)获得对应的WEB Server 的IP地址
  3. 建立TCP/IP连接:获得IP地址后,浏览器将会像对应的WEB Server发起**TCP(传输控制协议)**连接请求,最终联立TCP/IP连接
  4. 发送HTTP请求:建立了TCP连接后,浏览器会向WEB Server发起HTTP请求(请求一般包含:请求方法、请求头、请求正文)
  5. 处理请求:WEB Server解析收到的请求,将其发送给WEB APP进行数据处理等操作
  6. 返回HTTP响应:WEB Server根据情况返回HTTP响应(指定的URL数据或错误信息)给客户端
  7. 浏览器显示页面:浏览器收到响应后,将会解析HTML、CSS和Java Script,随后baidu页面就会显示出来了

在这里插入图片描述

在这里插入图片描述


扩展内容

HTTP请求

发送HTTP请求的过程就是构建HTTP请求报文,并通过TCP协议发送到服务器指定端口(HTTP协议80/8080, HTTPS协议443)。

HTTP请求报文是由三部分组成: 请求方法, 请求报头和请求正文

请求行:

下面是一个完整的HTTP请求例子:

GET/sample.jspHTTP/1.1
Accept:image/gif.image/jpeg,*/*
Accept-Language:zh-cn
Connection:Keep-Alive
Host:localhost
User-Agent:Mozila/4.0(compatible;MSIE5.01;Window NT5.0)
Accept-Encoding:gzip,deflate

username=jinqiao&password=1234

注意:最后一个请求头之后是一个空行,发送回车符和换行符,通知服务器以下不再有请求头。

(1)请求的第一行是“方法URL议/版本”:GET/sample.jsp HTTP/1.1
(2)请求头(Request Header)
请求头包含许多有关的客户端环境和请求正文的有用信息。例如,请求头可以声明浏览器所用的语言,请求正文的长度等。
(3)请求正文
请求头和请求正文之间是一个空行,这个行非常重要,它表示请求头已经结束,接下来的是请求正文。请求正文中可以包含客户提交的查询字符串信息:

常用的请求方法有: GET, POST, PUT, DELETE, OPTIONS, HEAD。


HTTP响应

HTTP响应报文也是由三部分组成: 状态码, 响应报头和响应报文

状态码是由3位数组成,第一个数字定义了响应的类别,且有五种可能取值:

1xx:指示信息–表示请求已接收,继续处理。
2xx:成功–表示请求已被成功接收、理解、接受。
3xx:重定向–要完成请求必须进行更进一步的操作。
4xx:客户端错误–请求有语法错误或请求无法实现。
5xx:服务器端错误–服务器未能实现合法的请求。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值