面试准备 HTTP协议
http协议的主要特点
简单快速 //某个资源是固定的 (统一资源符)UII
灵活 //http头部有个数据类型,完成不同数据类型的传输
无连接 //链接一次就会断开
无状态 //客户端和服务端是两种身份 http中间建立链接(不区别两次链接者的身份)
http报文组成部分
请求报文:
请求行:请求方法 页面地址 http协议版本
请求头 Header //key value
空行 /r/n/r/n
请求体 body
HTTP方法
GET --- 获取资源
POST --- 传输资源
PUT ---- 更新资源
DELETE --- 删除资源
HEAD --- 获得报文首部
POST与GET区别
GET在回退的时候无害的 POST会再次请求
GET产生的地址可以收藏 post不行
GET会被浏览器主动缓存。POST不会除非设置
GET只能进行URL编码,POST多种编码
GET中参数会被完整保留在历史记录中。post不会
GET在url中传送参数是有长度限制,post没有
get只接受ascll字符。post不会
get比post更不安全。因为参数直接暴露在url上,所有不能传递敏感信息
get通过url传递。post放在request body中
http状态吗
1开头 指示信息 请求已经接受,继续处理
2开头 成功 请求被成功接受
200 客户端请求成功
206 播放视频音频文件 (文件比较大)
3 重定向 要完成请求必须更进一步的操作
301 请求转移新的url
302 临时转移新的url 临时重定向
304 电脑有缓存
4 客户端错误 请求语法错误或请求无法实现
400 语法错误
401 未授权
403 请求页面被禁止
404 资源找不到
5 服务器错误 服务器未能实现合法的请求
500 服务器错误
503 临时过载或当机
HTTP持久连接
请求-应答模式 每次请求/应答要建立连接 完成后断开连接
http1.1 就支持了持久连接
// 当使用Keep-Alive模式(持久连接)能使客户端与服务器的连接持续有效
当出现后继请求的时候。KeepAlive功能避免了建立或重新建立连接
HTTP管线化
持久连接 (连接不会中断)
请求1 --响应1--请求2--响应2
某个连接上的消息变成类似这样
请求打包 响应打包
请求1--请求2--响应1--响应2
//这块我了解原理怎么用
//没有认真研究过
//业务中已经够用了
//什么好的资料可以补充一下细节
管线化特点:
持久连接 版本http 1。1
GET和HEAD请求可以用 post有所限制
初次连接不用管线化机制
面试准备 HTTP协议的更多相关文章
- 不惧面试:HTTP协议(1) - 基础扫盲
v博客前言 先交代下背景,之前在一家公司面试.NET开发,去了先是做一份笔试题,有一半是关于HTTP协议的,技术总监直接面试,也是问一大堆HTTP协议的知识点,可能跟该公司的产品有关,该公司属于互联网 ...
- 不惧面试:HTTP协议(3) - Cookie
v博客前言 先交代下背景,写这个系列的原因是总结自己遇到的面试题以及可能遇到的题目,更重要的是,今年定的目标是掌握网络这一块的知识点,先是搞懂HTTP协议,然后是TCP/IP协议,再就是WCF如何运用 ...
- 关于面试总结8-http协议相关面试题
前言 在PC浏览器的地址栏输入一串URL,然后按Enter键这个页面渲染出来,这个过程中都发生了什么事?这个是很多面试官喜欢问的一个问题 如果测试只是停留在表面上点点点,不知道背后的逻辑,是无法发现隐 ...
- 网络协议相关面试问题-http协议相关面试问题
HTTP协议简介: 一些基本概念: 协议:指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或规则. HTTP协议:超文本传输协议(HTTP)是一种通信协议,它允许将超文本标记语言(HTML ...
- 前端面试:Http协议与浏览器
Http与Https的区别 Http是明文传输的,Https协议是在Http协议上添加了SSL的加密协议,可以进行加密传输和身份验证. 其实就是说Http对网络传输完全是裸奔状态,也就没办法防范中间人 ...
- 【Java面试】TCP协议为什么要设计三次握手?
一个工作5年的粉丝,最近去面试了很多公司,每次都被各种技术原理题问得语无伦次. 由于找了快1个月时间的工作,有点焦虑,来向我求助. 我能做的只是保证每天更新一个面试题,然后问他印象最深刻的一个面试题是 ...
- 【面试】http协议知识
一.什么是HTTP协议 HTTP协议是一种应用层协议,HTTP是HyperText Transfer Protocol(超文本传输协议)的英文缩写.HTTP可以通过传输层的TCP协议在客 ...
- 面试:http协议
转自:http://www.cnblogs.com/ranyonsue/p/5984001.html#undefined HTTP简介 HTTP协议是Hyper Text Transfer Proto ...
- 斐迅面试记录—Http协议中的Header
HTTP Request的Header信息 1.HTTP请求方式 如下表: 说明: 主要使用到“GET”和“POST”. 实例: POST /test/tupian/cm HTTP/1.1 分成三部 ...
随机推荐
- UVA - 225 Golygons (黄金图形)(回溯)
题意:平面有k个障碍点.从(0,0)出发,第一次走1个单位,……,第n次走n个单位,恰好回到(0,0),每次必须转弯90°,图形可以自交,但不能经过障碍点.按字典序输出所有移动序列,并输出序列总数. ...
- 官网英文版学习——RabbitMQ学习笔记(七)Topic
在上一篇中使用直接交换器改进了我们的系统,使得它能够有选择的进行接收消息,但它仍然有局限性——它不能基于多个条件进行路由.本节我们就进行能够基于多个条件进行路由的topics exchange学习. ...
- Si7006主要面向传统上使用的分立RH / T传感器的低精度的应用
Silicon Labs的Si7006 / 13/20/21个I 2 C相对湿度及温度传感器结合充分工厂校准湿度和温度传感器元件与模拟-数字转换器,信号处理和一个I 2 C主机接口.专利使用业界标准低 ...
- Spark调优(一)
一.对多次使用的RDD进行持久化 如何选择一种最合适的持久化策略? 默认情况下,性能最高的当然是MEMORY_ONLY,但前提是你的内存必须足够足够大, 可以绰绰有余地存放下整个RDD的所有数据.因为 ...
- 吴裕雄 Bootstrap 前端框架开发——Bootstrap 字体图标(Glyphicons):glyphicon glyphicon-align-justify
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ...
- css 径向渐变
.example { width: 150px; height: 80px; background: -webkit-radial-gradient(red, green, blue); /* Saf ...
- 学习spring的第三天
1.手动的依赖注入出了昨天所讲的利用<property>和<constructor-arg>标签设置注入外还可以通过属性值设置,这样就少些了一些代码... 1.1:直接在< ...
- 对 TD tree 的使用体验
经过这几天对学长们的作品的应用,感触颇多,忍不住写写随笔. 先谈一下,最初的感受吧,那天下午观看,体验学长学姐们的作品时,感觉他们太厉害了,只比我们多学一年,就已经可以做出手机 app ,和 网页了. ...
- PHP二维数组--去除指定列含有重复项的数组
给定二维数组: $arr = array( '0' => array('张三',2,3,4), '1' => array('李四',2,3,4), '2' => array('张三' ...
- C++基础--转string
在C++中,任意数值型转可以使用字符串流的方式来实现,如果编译器支持C++11标准的话,也可以用to_string()函数来实现. 1.to_string() to_string()包含在头文件< ...