浅谈HTTP和HTTPS
HTTP和HTTPS协议
- 网络协议:计算机之间为了实现网络通信而达成的一种“约定”或“规则”,有了这种“约定”,不同厂商的生产设备,以及不同不同操作系统组成的计算机之间,就可以实现通信。
- HTTP(Hyper Text Transfer Protocol)协议是超文本传输协议的缩写,是从web服务器传输超文本标记语言到本地浏览器的传输协议。
- HTTP原理:HTTP是一个基于TCP/IP通信协议来传递数据的协议,传输的数据类型为HTML文件、图片文件,查询结果等。
HTTP协议一般用于B/S架构。浏览器作为HTTP客户端通过URL向HTTP服务端发送所有请求。
请求正文构成

请求行:包括请求方法、URL、协议/版本
请求头:user-agent:告知服务器客户端的相关信息,比如浏览器的类型和版本
accept-encoding:告知服务器客户端支持的压缩格式
accept-language:告知服务器客户端支持的语言
content-type:告知服务器所发送的请求主题的数据类型,如果是post方法,则建议一定指定该信息头
请求正文:“un”:“ ”,“pw”:“”

长连接和短连接
HHT/1.1 之前默认的是短连接,以后的是长连接,一次TCP连接可以进行多次http请求,使用connection字段控制,默认开启长连接Connection:keep-Alive.
常见的请求方法
GET:获取资源,请求指定的页面信息,并返回实体主体
POST:向服务器创建资源,提交数据进行处理请求(例如表单或上传文件)。数据被包含在请求中。POST请求可能会导致心得资源的建立,或者对已有资源的修改。
HEAD:类似get,返回的响应中没有具体的内容,之获取报头。
PUT:从客户端向服务器传送的数据取代指定的文档内容。
DELLET:请求服务器删除指定的资源。
POST和GET的区别
(1)都包含请求头请求行,post多了请求body
(2)get多用来查询,请求参数放在url中,用”?“表示,不会对服务器上的内容产生作用,post用来提交,如把账号密码放在body中
(3)GET是直接添加到URL后面,直接在URL中看到内容,而POST是放在请求内部的,用户无法直接看到
(4)GET提交的数据长度有限,而POST没有
(5)GET多次请求,服务端状态不改变,而POST每次都会改变
HTTP和HTTPS的区别
HTTP存在安全性问题:①请求信息铭文传输,容易被窃听截取;②数据的完整性未校验,容易被篡改;③没有校验对方身份,存在冒充危险
HTTPS:一般理解为HTTP+SSL/TSL,通过SSL证书来雁阵该服务器的身份,并为浏览器和服务器之间的通信进行加密。
详见https://www.cnblogs.com/jesse131/p/9080925.html
浅谈HTTP和HTTPS的更多相关文章
- 浅谈HTTP和HTTPS的区别
这篇随笔我们从六个步骤来学习: 1.了解HTTP和HTTPS的基本概念 2.HTTPS诞生的目的 3.HTTP与HTTPS的区别 4.HTTP和HTTPS的工作原理 5.HTTPS的优缺点 6.如何将 ...
- 浅谈Http与Https
大家都知道,在客户端与服务器数据传输的过程中,http协议的传输是不安全的,也就是一般情况下http是明文传输的.但https协议的数据传输是安全的,也就是说https数据的传输是经过加密. 在客户端 ...
- 浅谈动态规划(Dynamic Programming)
利用Leetcode#198打劫家舍 浅谈动态规划 Origin:https://leetcode-cn.com/problems/house-robber/ 题目本身不难,就是一个动态规划的问题.在 ...
- 浅谈HTTPS以及Fiddler抓取HTTPS协议
最近想尝试基于Fiddler的录制功能做一些接口的获取和处理工作,碰到的一个问题就是简单连接Fiddler只能抓取HTTP协议,关键的登录请求等HTTPS协议都没有捕捉到,所以想让Fiddler能够同 ...
- [转]浅谈https\ssl\数字证书
浅谈https\ssl\数字证书 http://www.cnblogs.com/P_Chou/archive/2010/12/27/https-ssl-certification.html 全球可信的 ...
- 浅谈HTTPS以及Fiddler抓取HTTPS协议(摘抄)
一.浅谈HTTPS 我们都知道HTTP并非是安全传输,在HTTPS基础上使用SSL协议进行加密构成的HTTPS协议是相对安全的.目前越来越多的企业选择使用HTTPS协议与用户进行通信,如百度.谷歌等. ...
- 【转载】浅谈HTTPS以及Fiddler抓取HTTPS协议
最近想尝试基于Fiddler的录制功能做一些接口的获取和处理工作,碰到的一个问题就是简单连接Fiddler只能抓取HTTP协议,关键的登录请求等HTTPS协议都没有捕捉到,所以想让Fiddler能够同 ...
- 浅谈 HTTPS 和 SSL/TLS 协议的背景与基础
来自:编程随想 >> 相关背景知识 要说清楚 HTTPS 协议的实现原理,至少需要如下几个背景知识. 大致了解几个基本术语(HTTPS.SSL.TLS)的含义 大致了解 HTTP 和 ...
- 浅谈angular2+ionic2
浅谈angular2+ionic2 前言: 不要用angular的语法去写angular2,有人说二者就像Java和JavaScript的区别. 1. 项目所用:angular2+ionic2 ...
随机推荐
- python爬虫面试题集锦及答案
1.爬取数据后使用哪个数据库存储数据的,为什么? - 2.你用过的爬虫框架或者模块有哪些?优缺点? - 3.写爬虫是用多进程好?还是多线程好? - 4.常见的反爬虫和应对方法? - 5.需要登录的网页 ...
- Centos8安装Docker提示:package docker-ce-3:19.03.8-3.el7.x86_64 requires containerd.io >= 1.2.2-3, but none of the providers can be installed
Centos8安装Docker提示:package docker-ce-3:19.03.8-3.el7.x86_64 requires containerd.io >= 1.2.2-3, but ...
- Java IO 流 -- 转换流: InputStreamReader OutputStreamWriter
java 中 转换流是以字符流的形式操作字节流,需要注意一下两点: 1.操作内容必须是纯文本 2.指定字符集避免乱码 操作控制台输入输出: try (BufferedReader br = new B ...
- 【shell】Shell变量基础及深入
1. 什么是变量 变量就是用一个固定的字符串(也可能是字符数字等的组合),替代更多更复杂的内容,这个内容里可能还会包含变量和路径,字符串等其他内容. 变量的定义是存在内存中. x=1 y=2 2. 变 ...
- Ubuntu+FastDFS+Nginx
一.安装libfastcommon 1.wget https://github.com/happyfish100/libfastcommon/archive/V1.0.7.tar.gz 2.tar - ...
- SaaS 公司如何切入大客户
编者按:本文作者是氪空间第四期项目 Kuick 创始人崔超,其现在的产品KuickDeal是一款销售活动管理工具.本文来自作者投稿,36 氪经授权转载. 首先,今天我们不讨论 SaaS 公司应该做中小 ...
- 多线程——继承Thread 类和实现Runnable 接口的区别
java中我们想要实现多线程常用的有两种方法,继承Thread 类和实现Runnable 接口,有经验的程序员都会选择实现Runnable接口 ,其主要原因有以下两点: 首先,java只能单继承,因此 ...
- 难道你现在还不知道:C/S和B/S
随着网络技术的不断发展,各种各样的网络应用程序大爆发.运用最多的架构是基于浏览器+服务器的B/S结构,另一种是基于的 C/S结构. 概述: BS = Browser / Server =浏览器+服务器 ...
- hdu2544最短路
在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shirt.但是每当我们的工作人员把上百件的衣服从商店运回到赛场的时候,却是非常累的!所以现在他们想要寻找最短的从商店到赛场的路线,你可以帮助 ...
- vue2.0那些坑之使用elementUI后v-on:click事件不生效问题
最近在维护vue2.0的项目,遇到了不少坑,在这里说下引用elementui之后,使用v-on:click绑定点击事件无效的情况,如下图: 我想阻止冒泡事件,发现无效.这里将@click换成了@cli ...