/**
1、HTTP以及HTTPS概念
HTTP是超文本传输协议,是一个用于传输超媒体文档的应用层协议,被用于在web浏览器和网站服务器之间,以明文方式传递信息,
不提供任何方式的饿数据加密,因此使用http传输隐私信息非常不安全; 为了解决这一安全缺陷,网景公司设计了SSL协议,在http基础上加入ssl协议,依靠证书来验证服务器的身份,并为
浏览器和服务器之间的通信进行加密,从而产生了HTTPS;
**/ /**
2、HTTP状态码有哪些? HTTP 响应状态代码指示特定 HTTP 请求是否已成功完成。
响应分为五类:
信息响应(100–199);
成功响应(200–299);
重定向(300–399);
客户端错误(400–499);
服务器错误 (500–599); 常用的有:
200(ok) 请求成功
404(Not Found) 服务器找不到请求的网页
405(禁用) 禁用请求中指定的方法
408(请求超时) 服务器等候请求时发生超时
500(服务器错误) 服务器内部错误 服务器遇到错误,无法完成请求
504(服务器网关超时) 当服务器作为网关,不能及时得到响应时返回此错误代码。
**/ /**
2、HTTP与HTTPS有什么区别? HTTPS在传输数据之前需要客户端(浏览器)与服务端(网站)之间进行一次握手,在握手过程中将确立双方加密传输数据的密码信息
a、HTTPS协议需要到CA申请证书,需要花钱买;
b、HTTP协议 = TCP,HTTPS协议 = TCP+SSL;
c、HTTP信息是明文传输,HTTPS是加密传输;
d、HTTP的url以http://开头,HTTPS的url以https://开头
e、HTTP的端口为80,HTTPS的端口为443;
**/ /**
3、浏览器存储方式有哪些?
a、cookie: 一般由服务器生成,可以设置过期时间,数据存储大概4k,,每次会携带在header中,对弈请求性能影响;
b、session
c、localStorage:除非被清理,否则一直存在,数据存储大概5M
d、sessionStorage:页面关闭就清理,数据存储大概5M 注意: localStorage和sessionStorage自带getItem和setItem,只能存取字符串,存取JSON数据需配合JSON.stringify()和JSON.parse();
遇见禁用setItem的浏览器,需要使用try...catch捕获异常; cookie和session的区别:
1、存在的位置:cookie是存储在客户端,session是存储在服务器端;
2、cookie是以明文的方式放在客户端的,安全性低,可以通过一个加密算发进行加密后存放,
session存放于服务器的内存中,所以安全性性好;
3、cookie为多个用户浏览器共享,session为一个用户浏览器独享; **/ /**
4、地址栏输入url后会发生什么? 1、DNS域名解析(解析成ip地址,走UTP协议,因此不会握手过程):
浏览器将 URL 解析出相对应的服务器的 IP 地址(
1. 本地浏览器的 DNS 缓存中查找
2. 再向系统DNS缓存发送查询请求
3. 再向路由器DNS缓存
4. 网络运营商DNS缓存
5. 递归搜索),
并从 url 中解析出端口号
2、浏览器与目标服务器建立一条 TCP 连接(三次握手)
3、浏览器向服务器发送一条 HTTP 请求报文
4、服务器返回给浏览器一条 HTTP 响应报文
5、浏览器进行渲染
6、关闭 TCP 连接(四次挥手) **/ /**
5、页面渲染优化? 1、HTML文档结构层次尽量少,最好不深于6层;
2、脚本尽量放后边,避免阻止页面加载;
3、少量首屏样式可以放在便签内;
4、样式结构层次尽量简单;
5、脚本减少DOM操作,减少回流,尽量缓存访问DOM的样式信息;
6、尽量减少JS修改样式,可以通过修改class名的方式解决;
7、减少DOM查找,缓存DOM查找结果;
8、动画在屏幕外活页面滚动时,尽量停止; **/ /**
6、get和post的区别? 1、get参数通过url传递,post放在body中(http协议规定,url在请求头中,所以大小限制很小);
2、get相比post不够安全,因为参数直接暴露在url中,所以不能用来传递敏感信息;
3、get在浏览器回退时是无害的,而post会再次提交请求;
4、对参数的数据类型,get只接受ASCII字符,而POST没有限制; **/

面试必问之http以及浏览器相关知识的更多相关文章

  1. linux驱动工程面试必问知识点

    linux内核原理面试必问(由易到难) 简单型 1:linux中内核空间及用户空间的区别?用户空间与内核通信方式有哪些? 2:linux中内存划分及如何使用?虚拟地址及物理地址的概念及彼此之间的转化, ...

  2. 互联网公司面试必问的Redis题目

    Redis是一个非常火的非关系型数据库,火到什么程度呢?只要是一个互联网公司都会使用到.Redis相关的问题可以说是面试必问的,下面我从个人当面试官的经验,总结几个必须要掌握的知识点. 介绍:Redi ...

  3. 互联网公司面试必问的mysql题目(下)

    这是mysql系列的下篇,上篇文章地址我附在文末. 什么是数据库索引?索引有哪几种类型?什么是最左前缀原则?索引算法有哪些?有什么区别? 索引是对数据库表中一列或多列的值进行排序的一种结构.一个非常恰 ...

  4. 面试必问:JVM类加载机制详细解析

    前言 在Java面试中,简历上有写JVM(Java虚拟机)相关的东西,JVM的类加载机制基本是面试必问的知识点. 类的加载和卸载 JVM是虚拟机的一种,它的指令集语言是字节码,字节码构成的文件是cla ...

  5. 一线大厂Java面试必问的2大类Tomcat调优

    一.前言 最近整理了 Tomcat 调优这块,基本上面试必问,于是就花了点时间去搜集一下 Tomcat 调优都调了些什么,先记录一下调优手段,更多详细的原理和实现以后用到时候再来补充记录,下面就来介绍 ...

  6. 高级测试工程师面试必问面试基础整理——python基础(一)(首发公众号:子安之路)

    现在深圳市场行情,高级测试工程师因为都需要对编程语言有较高的要求,但是大部分又没有python笔试机试题,所以面试必问python基础,这里我整理一下python基本概念,陆续收集到面试中python ...

  7. Java面试必问之Hashmap底层实现原理(JDK1.7)

    1. 前言 Hashmap可以说是Java面试必问的,一般的面试题会问: Hashmap有哪些特性? Hashmap底层实现原理(get\put\resize) Hashmap怎么解决hash冲突? ...

  8. 【面试必问】python实例方法、类方法@classmethod、静态方法@staticmethod和属性方法@property区别

    [面试必问]python实例方法.类方法@classmethod.静态方法@staticmethod和属性方法@property区别 1.#类方法@classmethod,只能访问类变量,不能访问实例 ...

  9. 互联网公司面试必问的mysql题目(上)

    又到了招聘的旺季,被要求准备些社招.校招的题库.(如果你是应届生,尤其是东北的某大学,绝对福利哦) 介绍:MySQL是一个关系型数据库管理系统,目前属于 Oracle 旗下产品.虽然单机性能比不上or ...

随机推荐

  1. 第二阶段scrum-6

    1.整个团队的任务量: 2.任务看板: 会议照片: 产品状态: 消息收发功能正在制作

  2. css怎么让图片垂直左右居中?(外层div是浮动且按照百分比排列)

    一.原始的居中方法是把div换成table <div style="width: 500px; height: 200px; border: solid 1px red; text-a ...

  3. Spring 事件(1)- 内置事件

    Spring 系列教程 Spring 框架介绍 Spring 框架模块 Spring开发环境搭建(Eclipse) 创建一个简单的Spring应用 Spring 控制反转容器(Inversion of ...

  4. vue学习(九)对象变更检测注意事项

    Vue不能检测对象属性的添加和删除,要是必须这么做的话 需要使用 vue.$set() <body> <div id="app"> <h3> { ...

  5. IT日常技能:VMware网络配置

    1.0 基本概念 集线器:把一流量为M的端口分为N个端口,每个端口流量为M/N 交换机:把一流量为M的端口分为N个端口,每个端口流量仍为M 路由器:相当于两块网卡,一块连接外网并负责NAT, 另一块负 ...

  6. oracle函数创建与调用

    函数的定义: CREATE OR REPLACE FUNCTION FUNCTION_TEST(PARAMER1 IN VARCHAR, -- 参数的类型不写长度 PARAMER2 OUT VARCH ...

  7. filebeat+redis+logstash+elasticsearch基本配置--适用于6.4版本

    filebeat配置: filebeat.inputs:- type: log enabled: true paths: - /opt/xxxx.log fields:                ...

  8. android 动画基础绘——view 动画

    前言 对android 动画的整理,android 动画分为view动画(也叫补间动画),帧动画,属性动画. 看到这几个概念,让我想起了flash这东西.如果需要查各种动画具体的含义,那么可以去查询f ...

  9. python--多线程的应用

    python 多线程执行函数,以及调用函数时传参 import threading def func1(): print('this is function1') def func2(x,y): pr ...

  10. Dubbo与Zookeeper 简介

    转自http://blog.csdn.net/congcong68/article/details/41113239 首先说一下Dubbo解决什么问题: (1)当服务越来越多时,服务Url配置管理变得 ...