【Android面试】计算机网络面试题整理(二)

一、网页中输入url,到渲染整个界面的整个过程,以及中间用了什么协议?

1)过程分析:主要分为三步

  • DNS解析。用户输入url后,需要通过DNS解析找到域名对应的ip地址,有了ip地址才能找到服务器端。首先会查 找浏览器缓存,是否有对应的dns记录。再继续按照操作系统缓存—路由缓存—isp的dns服务器—根服务器的顺 序进行DNS解析,直到找到对应的ip地址。
  • 客户端(浏览器)和服务器交互。浏览器根据解析到的ip地址和端口号发起HTTP请求,请求到达传输层,这里也 就是TCP层,开始三次握手建立连接。服务器收到请求后,发送相应报文给客户端(浏览器),客户端收到相应 报文并进行解析,得到html页面数据,包括html,js,css等。
  • 客户端(浏览器)解析html数据,构建DOM树,再构造呈现树(render树),最终绘制到浏览器页面上。

2)其中涉及到TCP/IP协议簇,包括DNS,TCP,IP,HTTP协议等等。

二、具体介绍下TCP/IP

TCP/IP一般指的是TCP/IP协议簇,主要包括了多个不同网络间实现信息传输涉及到的各种协议 主要包括以下几层:

  • 应用层:主要提供数据和服务。比如HTTP,FTP,DNS等
  • 传输层:负责数据的组装,分块。比如TCP,UDP等
  • 网络层:负责告诉通信的目的地,比如IP等
  • 数据链路层:负责连接网络的硬件部分,比如以太网,WIFI等

三、HTTP的几种请求方法具体介绍

  • GET 获取资源,没有body,幂等性
  • POST 增加或者修改资源,有body
  • PUT 修改资源,有body,幂等性
  • DELETE 删除资源,幂等性

四、HTTP请求和响应报文的格式,以及常用状态码。

1)请求报文:

//请求行(包括method、path、HTTP版本)
GET /s HTTP/1.1
//Headers
Host: www.baidu.com
Content-Type: text/plain
//Body
搜索****

2)响应报文

//状态行 (包括HTTP版本、状态码,状态信息)
HTTP/1.1 200 OK
//Headers
Content-Type: application/json; charset=utf-8
//Body
[{"info":"xixi"}]

3)常用状态码 主要分为五种类型:

  • 1开头, 代表临时性消息,比如100(继续发送)
  • 2开头, 代表请求成功,比如200(OK)
  • 3开头, 代表重定向,比如304(内容无改变)
  • 4开头, 代表客户端的一些错误,比如403(禁止访问)
  • 5开头, 代表服务器的一些错误,比如500
#android面试#
全部评论
真的很需要!马住!
点赞
送花
回复
分享
发布于 2023-02-14 12:21 辽宁
多谢大佬指教
点赞
送花
回复
分享
发布于 2023-02-14 13:03 安徽
秋招专场
校招火热招聘中
官网直投
感谢
点赞
送花
回复
分享
发布于 2023-05-08 08:54 安徽

相关推荐

头像
不愿透露姓名的神秘牛友
05-29 17:05
点赞 评论 收藏
转发
5 41 评论
分享
牛客网
牛客企业服务