目录
http有八种请求 简书 get和post请求的区别... 2
什么是TCP 什么是UDP 两者的区别
TCP 传输控制协议
是一种面向连接的,可靠的,基于字节流的传输层通信协议
必须先建立连接 传输速度慢
点到点的连接
对系统资源要求较多
是流模式
UDP 用户数据包协议
是一种面向无连接的,不可靠的信息传送服务
无连接 传输速度快
具有较好的实时性,工作效率比TCP高,适用于对高速传输和实时性比较高的通信或广播通信
一对一,一对多,多对多的交互通信
对系统资源要求较少 程序结构简单
是数据报模式
描述tcp的三次握手四次挥手
第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;
SYN:同步序列编号(Synchronize Sequence Numbers)
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手.
(1)第一次挥手:Client发送一个FIN,用来关闭Client到Server的数据传送,Client进入FIN_WAIT_1状态。
(2)第二次挥手:Server收到FIN后,发送一个ACK给Client,确认序号为收到序号+1(与SYN相同,一个FIN占用一个序号),Server进入CLOSE_WAIT状态。
(3)第三次挥手:Server发送一个FIN,用来关闭Server到Client的数据传送,Server进入LAST_ACK状态。
(4)第四次挥手:Client收到FIN后,Client进入TIME_WAIT状态,接着发送一个ACK给Server,确认序号为收到序号+1,Server进入CLOSED状态,完成四次挥手。
简书HTTP和HTTPS协议的不同之处
- HTTP:HyperText Transfer Protocol
- 超文本传输协议是物联网上应用最为广泛的一种网络协议,所有的www文件都必须遵守这个标准
- HTTPS:Hyper Text Transfer Protocol over Secure Socket Layer
- 承载TSL/SSL协议层之上便就成为了https
1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。
2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。
http有八种请求 简书 get和post请求的区别
根据HTTP标准,HTTP请求可以使用多种请求方法。
HTTP1.0定义了三种请求方法: GET, POST 和 HEAD方法。
HTTP1.1新增了五种请求方法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT 方法。
GET | POST | HEAD | OPTIONS | PUT | DELETE | TRACE | CONNECT |
- OPTIONS:返回服务器对指定资源数据支持的HTTP请求方法,一般用于测试服务器功能的可用性
- HEAD:返回服务器上对指定资源数据的HTTP请求头,在不需要返回全部数据的情况下测试指定功能的可用性
- GET:向服务器请求指定的资源
- POST:向服务器提交数据请求处理,数据被包含在请求体中
- PUT:向服务器上传指定的数据
- DELETE:向服务器发送请求删除指定数据
- TRACE:回显服务器收到的请求,主要进行功能测试诊断
- CONNECT:HTTP1.1协议中预留请求方式,可以将连接改为管道方式代理服务器
Get和post的区别
- 提交参数的位置不同:
GET 提交的数据会放在 URL 之后,以?分割 URL 和传输数据,参数之间以&相连,如 http://www.baidu.com/test?name=test&id=123456。
POST 方法是把提交的数据放在 HTTP 包的 Body 中。
- 提交参数的大小不同(理论上,存在争议):
GET 提交的数据大小有限制(因为浏览器对 URL 的长度有限制),这点要根据实际情况而论,目前浏览器种类比较多,不同的浏览器大小限制不同。
而 POST 方法提交的数据理论上没有限制,但是不建议太大。
- 安全问题上:
GET 方式提交数据,会带来安全问题,因为参数是裸露在地址栏上,所以较不安全。
POST 方式参数在 body 中,所以安全性较高(注意:只是较高,不是很安全,在 http 协议下,不管哪种提交方式,都是明码提交,只要有抓包工具,都能抓取数据的!!!)
- 是否浏览器可以收藏
GET 请求因为参数在地址栏上,因此可以收藏(因为参数也会保存啊)。 而 POST 请求不行,不能被浏览器收藏,因为参数无法被浏览器保存。