网络基础知识(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 ...
随机推荐
- AspNetCore 2.2 新特性---HealthCheck
网站部署上线后, 总是担心网站是否工作正常, 内存压力是否很大, CPU是否超负荷了?当然, 我们有一大套系统, perfromance counter, 监控软件来监视运维生产系统.但是这些第三方软 ...
- 微信多开简单实现 WeXinMoreOpen.bat
新建一个 WeXinMoreOpen.bat 文件,内容如下 @echo off D: cd "D:\Program Files (x86)\Tencent\WeChat" sta ...
- docker添加mongo4.0.3并配置复制集
1.创建docker 具体略过 自行百度 2.创建数据持久化目录文件(/data/mongo0是个例子 命名随意) 拉取mongo docker pull mongo:4.0.3 3.启动容器 do ...
- js生成条形码——JsBarcode
原文地址:https://www.cnblogs.com/huangenai/p/6347607.html 介绍一下在GitHub生成条形码的js插件→JsBarcode 条码支持的有: CODE12 ...
- TimSort Java源码个人解读
/*JDK 1.8 */ package java.util; /** * A stable, adaptive, iterative mergesort that requires far fewe ...
- js中常见字符串类型操作方法(2)
toLowerCase(),toLocalLowerCase(),toUpperCase(),toLocaleUpperCase() var stringValue = "hello wor ...
- 2019-7-19 包、logging模块、hashlib(加密模块)、openpyxl模块、深浅拷贝
一.包 什么是包: 它是一系列模块文件的结合体,表示形式就是一个文件夹.该文件内部通常会有一个__init__.py文件,包的本质还是一个模块,可以被调用,调包就相当于与调用__init__.py文件 ...
- IDEA中使用git
这篇文章写的很好,记录参考 [转载] https://blog.csdn.net/autfish/article/details/52513465 https://www.jianshu.com/p/ ...
- docker查看日志记录
命令格式: $ docker logs [OPTIONS] CONTAINER Options: --details 显示更多的信息 -f, --follow 跟踪实时日志 --since strin ...
- 如何配置这个maven仓库的源http://mvnrepository.com/repos
http://mvnrepository.com/repos 主要是ID .mirrorof.name 怎么配置,这个网站上有spring5.0的,别的仓库没有,我需要这个源. 原文地址:https: ...