http协议类

1)http协议的主要特点

            简单快速   统一资源符

灵活          通过http协议,可以修改http头,完成不同数据类型的传输

无连接       连接一次就会断掉不会保持连接

无状态       客户端与服务器连接一次断了之后再次连接,服务器并不知道客户端是谁

      2)http报文的组成部分

           1、请求报文

                 请求行     (请求方式,http/http版本)

                 请求头

空行

请求体

           2、响应报文

                  状态行

响应头

空行

响应体

      3)http的方法

            GET            ->        获取资源

            POST          ->        传输资源

PUT             ->        更新资源

DELETE      ->        删除资源

HEAD          ->        获取报文首部

      4)post和get的区别

            1、get参数在url里传递,post参数放在请求体里

2、get只支持url编码,post支持多种编码方式

3、get有长度限制,post没有限制

4、get比post更加不安全,get参数会暴露在url里,不能用来传递敏感数据

5、get请求会被浏览器主动缓存,而post不会,除非手动设置

6、get请求的url地址可以被收藏,post不可以

7、get浏览器回退是无害的,而post会再次提交

8、get请求参数会保留在浏览器历史记录里,而post不会

      5)http状态码

            1xx、指示信息-表示请求已被接收,继续处理

2xx、成功-表示请求已被成功接收(200:客户端请求成功  206:客户发送range头的get请求,服务器完成了它)

3xx、重定向-要完成请求必须进行进一步的操作 (301:所有请求的页面已经转移至新的url,302:所请求的页面已经临时转移到了新的url,304:客户端有缓存的文档发出一个条件性请求,服务器告诉用户原来缓存的文档还可以使用)

  4xx、客户端错误-请求有语法错误或请求无法实现(400:客户端请求有语法错误,不能被服务器所理解,401:请求未被授权,403:请求的页面的访问被禁止,404:请求资源不存在)

5xx、服务器错误-服务器未能实现合法的请求(500:服务器发生不可预期的错误,503:请求未完成,服务器临时过载或当机,一段时间后可恢复正常)

      6)什么是持久化连接(1.1才支持Keep-Alive)

            http协议采用“请求-应答”模式,当使用普通模式,及非keep-alive模式时,每个请求/应答客户和服务器都要新建一个连接,完成以后会立即断开(http协议为无连接的协议)

当使用Keep-Alive模式(又称持久连接,连接重用)时,Keep-Alive功能是客户端到服务器端的链接持续有效,当出现对服务器的后继请求时,Keep-Alive功能避免了简历或者重新建立连接

      7)什么是管线化    

           在使用持久化连接的情况下,某个消息的传递类似于这样

请求1->响应1->请求2->响应2->请求2->响应2

管线化的消息传递类似于这样(1、原理:打包一次返回    2、只有get和head请求支持,post有所限制   3、初次不要启动管线机制,对方不一定支持)

请求1->请求2->请求3->响应1->响应2->响应3

面试视频知识点整理1-7(http协议)的更多相关文章

  1. 【Android 面试基础知识点整理】

    针对Android面试中常见的一些知识点整理,Max 仅仅是个搬运工.感谢本文中引用文章的各位作者,给大家分享了这么多优秀文章.对于当中的解析,是原作者个人见解,有错误和不准确的地方,也请大家积极指正 ...

  2. 两年经验拿到蚂蚁金服,字节offer,附上金九银十BAT面试核心知识点整理

    前言 我自己是本科毕业后在老东家干了两年多,老东家算是一家"小公司"(毕竟这年头没有 BAT 或 TMD 的 title 都不好意思报出身),毕业这两年多我也没有在大厂待过,因此找 ...

  3. PHP面试-复习知识点整理

    false的七种情况 整型0 浮点0.0 布尔false 空字符串'',"" 字符串'0' 空数组[] NULL 超全局数组 $GLOBALS,包含下面8个超全局数组的值 $_GE ...

  4. 高级 Java 面试通关知识点整理!

    1.常用设计模式 单例模式:懒汉式.饿汉式.双重校验锁.静态加载,内部类加载.枚举类加载.保证一个类仅有一个实例,并提供一个访问它的全局访问点. 代理模式:动态代理和静态代理,什么时候使用动态代理. ...

  5. 搞定PHP面试 - 正则表达式知识点整理

    一.简介 1. 什么是正则表达式 正则表达式(Regular Expression)就是用某种模式去匹配一类字符串的一种公式.正则表达式使用单个字符串来描述.匹配一系列匹配某个句法规则的字符串.正则表 ...

  6. 搞定PHP面试 - 运算符知识点整理

    一.算术运算符 1. 概览 例子 名称 结果 $a + $b 加法 $a 和 $b 的和. $a - $b 减法 $a 和 $b 的差. $a * $b 乘法 $a 和 $b 的积. $a / $b ...

  7. 搞定PHP面试 - 变量知识点整理

    一.变量的定义 1. 变量的命名规则 变量名可以包含字母.数字.下划线,不能以数字开头. $Var_1 = 'foo'; // 合法 $var1 = 'foo'; // 合法 $_var1 = 'fo ...

  8. 搞定PHP面试 - 函数知识点整理

    一.函数的定义 1. 函数的命名规则 函数名可以包含字母.数字.下划线,不能以数字开头. function Func_1(){ } //合法 function func1(){ } //合法 func ...

  9. web前端面试知识点整理

    一.HTML5新特性 本地存储 webStorage websocket webworkers新增地理位置等API对css3的支持canvas多媒体标签新增表单元素类型结构标签:header nav ...

  10. 2019.10.15 CSP初赛知识点整理

    初赛需要的知识点整理如下: (1)计算机的硬件组成与基本常识 (2)单位/进制的转换 (3)进制/逻辑运算相关 (4)概率与期望 (5)排序的各种性质 (6)简单数据结构的使用(栈.队列.链表等) ( ...

随机推荐

  1. FileChannel 数据传输(文件拷贝)

    import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import ...

  2. 2022-05-05内部群每日三题-清辉PMP

    1.在项目规划阶段,质量保证经理建议实施三重测试环境以确保产品质量.项目经理确定这项建议将会增加成本,而且开发和认证环境将足以保证质量.项目经理应使用什么来影响质量保证经理? A.质量成本(COQ) ...

  3. springboot集成xxl-job问题

    Client-error:unknown code for readObject at 0x3c (<) 原因之一是classNotFoundRxception :com.caucho.hess ...

  4. Locust fasthttplocust客户端环境搭建

    1.下载地址:https://github.com/locustio/locust2.python setup.py install3.在执行目录中将安装完成的locust文件夹替换至原本pip下的原 ...

  5. jdk 1.8 处理 map和list

    1.map 的 key 和 value 反转 2. list<Object> 取两列转成  map<String,String> map 3. list<Object&g ...

  6. docker 搭建minio

    minio为开源的高可用分部署对象存储服务组件,已经提供了分布式部署的解决方案,实现高可靠.高可用的资源存储,MinIO以极简主义为指导进行设计,追求极致的维护精简性和卓越的读写性能表现. -dock ...

  7. jdbc中druid连接池遇到的问题和jdbcTemplate

    无效的源发行版11 这是jdk版本不一致,去项目结构里排查一下 严重: init datasource error com.mysql.jdbc.exceptions.jdbc4.MySQLNonTr ...

  8. 51电子-STC89C51开发板:安装KEIL

    全部内容,请点击: 51电子-STC89C51开发板:<目录> ---------------------------  正文开始  --------------------------- ...

  9. openwrt 配置虚拟wan口

    一.刷固件:1.刷入 刷不死,百度上找教程:2.下载固件:https://downloads.openwrt.org/releases/17.01.6/targets/ramips/mt7620/ 按 ...

  10. c函数调用过程

    一.内存结构内存大致可以分为四个部分:代码段,静态存储区,堆,栈.具体划分如下图所示: 栈:在执行函数时,函数内部局部变量的存储单元都可以在栈上创建,函数执行结束后会自动释放内存.栈内存的分配运算内置 ...