# HTTP 常用的请求方式,区别和用途
请求方式 | 用途 |
---|---|
GET | 对服务器资源获取的简单请求 |
POST | 用于发送包含用户提交数据的请求 |
PUT | 向服务器提交数据,以修改数据 |
HEAD | 请求页面首部,获取资源的元信息 |
DELETE | 删除服务器上的某些资源 |
CONNECT | 用于ssl隧道的基于代理的请求 |
OPTIONS | 返回所有可用的方法,常用于跨域 |
TRACE | 追踪请求-响应的传输路径 |
# 网络端口及对应的服务
端口 | 服务 |
---|---|
21 | FTP(文件传输协议) |
22 | SSH |
23 | Telnet(远程登录)服务 |
53 | DNS域名服务器 |
80 | HTTP超文本传输协议 |
443 | HTTPS |
1521 | Oracle数据库默认端口 |
3306 | Mysql服务默认端口 |
# 计算机网络体系结构
# 在交互过程中如果数据传送完了,还不想断开连接怎么办,怎么维持?
在HTTP中响应体的Connection字段指定为keep-alive即可
# HTTP 的长连接与短连接
1、在长连接出现之前,http1.0中都是使用的短连接,其特点是一次http交互完成后就会断开连接。由于http协议是基于TCP协议的,而TCP协议有三次握手四次挥手来建立以及断开连接,那么面对多次的http请求,这种短连接就会造成多次的握手以及挥手资源浪费,正是因为这个问题才出现了长连接。
2、在http1.1中,出现了http长连接,其特点是保持连接特性,当一次http交互完后该TCP通道并不会关闭,而是会保持一段时间(在不同服务器上时间不一样,可以设置),如果在这段时间内再次发起了http请求就可以直接复用,而不用重新进行握手,从而减少了资源浪费。目前http1.1中,都是默认使用长连接
3、设置长连接:在请求头上添加connection:keep-alive
# 什么是数字签名、数字证书
数字证书是指在互联网通讯中标志通讯各方身份信息的一个数字认证
人们可以在网上用它来识别对方的身份。它的出现,是为了避免身份被篡改冒充的。
# 对称加密与非对称加密有什么区别
对称加密:指加密和解密使用同一密钥,优点是运算速度较快,缺点是如何安全将密钥传输给另一方。常见的对称加密算法有:DES、AES
非对称加密:指的是加密和解密使用不同的密钥(即公钥和私钥)。公钥与私钥是成对存在的,如果用公钥对数据进行加密,只有对应的私钥才能解密。常见的非对称加密算法有RSA。
# 五层计算机网络体系结构中,每一层对应的网络协议有哪些?
应用层
- HTTP :超文本传输协议
- FTP:文本传输协议
- SMTP:简单邮件传输协议
- DNS:域名系统
- SSH:安全外壳协议
- DHCP:远程登录协议
传输层
- TCP:传输控制协议
- UDP:用户数据报文协议
网络层
- IP:网际协议
- ARP:地址转换协议
- RARP:反向地址转换协议
- ICMP:Internet组管理协议
- RIP:路由信息协议
- OSPF:分布式链路状态协议
- BGP:边界网关协议
数据链路层
- ARQ:自动重传请求协议
- CSMA/CD:停止等待协议
- PPP:点对点协议
物理层
- HUB
- 网线
- 中继器
# WebSocket与socket的区别
Socket = IP地址 + 端口 + 协议
WebSocket是一个持久化的协议,它是伴随H5而出的协议,用来解决http不支持持久化连接的问题
# Http请求的过程与原理
1、客户端进行DNS域名解析,得到对应的IP地址
2、根据这IP,找到对应服务器建立连接(三次握手)
3、建立TCP连接后发起HTTP请求(一个完整的http请求报文)
4、服务器响应HTTP请求,客户端得到html代码
5、客户端解析html代码,用html代码中的资源渲染页面
6、服务器关闭TCP连接(四处挥手)
# forward和redirect的区别
forward(直接转发)客户端和浏览器只发出一次请求,Servlet、HTML、JSP或其它信息资源,由第二个信息资源响应该请求,在请求对象request中,保存的对象对于每个信息资源是共享的。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传
redirect(间接转发)实际是两次HTTP请求服务器端在响应第一次请求的时候,让浏览器再向另外一个URL发出请求,从而达到转发的目的
# DNS解析过程
以解析 www.csdn.net
为例:
1、首先会查询浏览器缓存是否能找到www.csdn.net
对应的IP地址,找到直接返回,否则进行下一步
2、将请求发往本地DNS服务器,如果查到到也直接返回,否则继续进行下一步
3、本地DNS服务器向根域名服务器发送请求,根域名服务器返回负责.com
的顶级域名服务器的IP地址列表
4、本DNS服务器再向其中一个复杂**.com**的顶级服务器发送一个请求,返回负责.baidu
的顶级域名服务器的IP地址列表
5、本地DNS服务器再向其中一个权威域名服务器发送一个请求,返回www.csdn.net
所对应的IP地址