/**
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. VUE3.x 前瞻

    文档: API Reference 教程 课件 1. 初始化项目 // ① npm i -g @vue/cli // ② vue create my-project // ③ npm install ...

  2. C#不显示在任务栏

    在我用c#写一些小程序是总是希望,程序窗体不在任务栏上显示程序的窗体,c# Form提供了一个 属性值可以很好的解决这个问题 这个属性就是 ShowInTaskbar 在微软的官方声明格式为: pub ...

  3. Redis Sentinel 学习笔记

    转载出处: http://blog.csdn.net/lihao21 概述 Redis Sentinel 是用来实现 Redis 高可用的一套解决方案.Redis Sentinel 由两个部分组成:由 ...

  4. 学习spring的第4天

    关于老式的spring+mybatis整合,使用了druid连接池,还使用了mybatis-spring依赖(用于整合的),但是这个依赖本身就使用了spring-jdbc的某些类来处理事务方面的内容, ...

  5. Markdown工具推荐

    Markdown 因语法简单,应用广泛,在近几年被很多开发者所喜爱.常用的语法不多,也就十来种吧.本人自从2017年接触就一发不可收拾. 在这几年里,用过了很多写Markdown的工具.接下来就以现在 ...

  6. 前端基础之AJAX

    AJAX 什么是AJAX,简单来说就是利用JavaScript天生异步的特性,使用异步请求后台数据,从而达到不刷新网页也能局部更新页面的效果. 原生AJAX JavaScript中的AJAX依赖于XM ...

  7. css设置兄弟节点的样式(相邻的前一个节点)

    产品需求:想在鼠标移动到“移除”的时候,“1.产品匹配测试”添加下划线和更改字体颜色 需求分析:从需求可以看出使用 :hover 就可以解决的问题,但是在实践中发现兄弟选择器(+)不好使,(+)只能是 ...

  8. microsoft help viewer 收藏夹功能

    平时重装系统比较多,重装后,microsoft help viewer 2.0里面的收藏就丢失了,要恢复以前的收藏,可以直接在C:\Users\ZR\AppData\Local\Microsoft\H ...

  9. 关于 python 中 虚拟环 virtualen境的操作

    python3.X安装和pip安装方法 pip install -i https://pypi.douban.com/simple XXX 1.安装virtualenv pip install vir ...

  10. tomcat迁移到weblogic的几个问题

    第1个问题: 异常描述:VALIDATION PROBLEMS WERE FOUND problem: cvc-enumeration-valid: string value '3.0' is not ...