网络基础知识(http请求)
http请求的过程
- 域名解析----TCP连接 ----发送请求-----响应请求----获取html代码----浏览器渲染
- TCP是主机对主机层的控制传输协议,提供可靠的连接服务
- TCP的三次握手
- 客户端向服务端发送连接请求报文,发送SYN包
- 服务端接收连接请求并发送SYN+ACK包给客户端
- 客户端接收ACK报文,向服务端发送ACK报文,建立连接
- TCP的四次挥手
- 第一次挥手:客户端发送一个FIN,用来关闭客户端与服务端的数据传送
- 第二次挥手:服务端接收客户端发送的FIN,发送一个ACK给客户端
- 第三次挥手:服务端发送一个FIN给客户端,用来关闭服务端与客户端的数据传送
- 第四次挥手:客户端接收到服务端发送的FIN,发送一个ACK给服务端,关闭连接
http和https的区别
https = ssl + http
1.https 需要到CA申请证书
2.http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议
3.http和https使用端口不一致,前者是80,后者是443
4.http的连接很简单,是无状态的。https协议是由ssl+http构建的加密传输协议,更安全
cookies机制和session机制的区别
1.cookies保存在客户端的浏览器,session保存在服务端
2.session较安全,占用服务器资源
3.cookies可以减轻服务器压力,但是不安全,容易进行cookie欺骗
接口鉴权的机制
用户使用用户名和密码发送请求
服务器通过验证,发送给客户端一个token
客户端存储token值,并在每个请求附送上这个token
服务器验证token,返回数据
网络基础知识(http请求)的更多相关文章
- iOS网络基础知识
iOS网络基础知识 1.一次HTTP请求的完整过程 (1)浏览器或应用发起Http请求,请求包含Http请求Http(请求),地址(url),协议(Http1.1)请求为头部 (2)web服务器接收到 ...
- 网络基础知识、ASP.NET 核心知识(1)*
为什么要写网络? 我原本的计划是这样的,连续两天梳理ASP.NET开发的核心知识.说到这呢,有人问了.“不是说好了做ASP.NET笔记吗?为啥要写网络基础知识?是不是傻?” 原因是这样的.作为网站开发 ...
- Java 网络编程(一) 网络基础知识
链接地址:http://www.cnblogs.com/mengdd/archive/2013/03/09/2951826.html 网络基础知识 网络编程的目的:直接或间接地通过网络协议与其他计算机 ...
- Linux运维笔记(一)网络基础知识
网络基础知识 一.基本概念 1.ARPANET & TCP/IP:以“软件”技术将网络硬件整合,使得不同的计算机或者数据可以通过这个软件达成数据沟通(TCP/IP技术也被称为Internet) ...
- TCP/IP协议(一)网络基础知识
参考书籍为<图解tcp/ip>-第五版.这篇随笔,主要内容还是TCP/IP所必备的基础知识,包括计算机与网络发展的历史及标准化过程(简述).OSI参考模型.网络概念的本质.网络构建的设备等 ...
- 转:TCP/IP协议(一)网络基础知识
转载:http://www.cnblogs.com/imyalost/p/6086808.html 参考书籍为<图解tcp/ip>-第五版.这篇随笔,主要内容还是TCP/IP所必备的基础知 ...
- TCP/IP协议(一)网络基础知识 网络七层协议
参考书籍为<图解tcp/ip>-第五版.这篇随笔,主要内容还是TCP/IP所必备的基础知识,包括计算机与网络发展的历史及标准化过程(简述).OSI参考模型.网络概念的本质.网络构建的设备等 ...
- 软件开发架构、网络基础知识、osi七层模型
一.软件开发的架构 涉及到两个程序之间通讯的应用大致可以分为两种: 第一种是应用类:qq.微信.网盘.优酷这一类是属于需要安装的桌面应用 第二种是web类:比如百度.知乎.博客园等使用浏览器访问就可以 ...
- 网络基础知识 tcp
网络基础相关的知识(1)架构a. C / S架构: client客户端和server服务器端 优势: 能充分发挥PC机的性能b. B / S架构: browser浏览器和server服务器 隶属于C ...
随机推荐
- Python的编码规范
7. 什么是 PEP8? 8号Python增强提案,是针对Python代码格式而编写的风格指南 8. 了解 Python 之禅么? 通过 import this 语句可以获取其具体的内容.它告诉大家何 ...
- 【idea】【sonarlint】指定文件夹扫描
选择文件夹右键->Analyze->Analyze with SonarLint
- Shadowing of static functions in Java
class A { static void fun() { System.out.println("A.fun()"); } } class B extends A { stati ...
- JVM Server与Client运行模式
JVM Server模式与client模式启动,最主要的差别在于:-Server模式启动时,速度较慢,但是一旦运行起来后,性能将会有很大的提升.原因是: 当虚拟机运行在-client模式的时候,使用的 ...
- Tarjan求有向图强连通分量 BY:优少
Tarjan算法:一种由Robert Tarjan提出的求解有向图强连通分量的线性时间的算法. 定义给出之后,让我们进入算法的学习... [情境引入] [HAOI2006受欢迎的牛] 题目描述: 每头 ...
- C++用new与不用new创建对象的区别
C++创建对象 一.Alignment问题 重新发现这个问题是因为在体系结构课上提到的一个概念,alignment对齐的概念. class MyClass { public : char c; // ...
- BJFU-215-基于链式存储结构的图书信息表的排序
这里用的是冒泡排序 #include<stdio.h> #include<stdlib.h> #define MAX 100 typedef struct Book{ doub ...
- js中常用的获得日期对象的方法
// 默认是当前时区的日期和时间 var date = new Date(); // 获取特定日期和时间的日期对象,需要传递毫秒数,不过可以传递规范日期格式字符串来代替 // 一些常见的日期格式 // ...
- Shell编程学习(七)
if 条件语句的知识与实践 if 条件语句 if条件语句的语法 单分支结构 第一种 if <条件测试表达式> then 指令 fi 第二种 if <条件测试表达式>; then ...
- nacos初探--作为配置中心
什么是nacos Nacos 支持基于 DNS 和基于 RPC 的服务发现(可以作为springcloud的注册中心).动态配置服务(可以做配置中心).动态 DNS 服务. 官方介绍是这样的: Nac ...