当前位置: 首页 > news >正文

HTTP协议基础知识点扫盲;HTTPS协议及密码学基础

目录

一、Http协议的特性

二、http协议的请求

1.请求行第一行,包含三个信息:请求方式,url,http协议版本

2.请求头浏览器向服务器发送一些状态数据,标识数据等等

3.请求主体请求代理端项服务器端,发送的请求数据!

三、http协议的响应响应包括:响应行、响应头、响应体

1.响应行响应行包括:协议版本、状态码、状态消息

2.响应头Content-Type: text/html 内容类型,告知浏览器接下来发送的响应主体数据是什么格式!

3.响应主体主要的响应数据,在浏览器的主体区域显示的数据都是相应主体!

四、HTTPS协议及密码学基础名字


一、Http协议的特性

http协议是建立在TCP/IP协议之上的应用层协议,默认端口为80,8080

http协议的特点是无状态,无连接

二、http协议的请求


利用抓包工具httpwatch可以获取报文

http协议的报文传输的是ASCII码,在TCP/IP协议之上,主要分为三部分

请求行、请求头、请求体

1.请求行
第一行,包含三个信息:请求方式,url,http协议版本

GET 请求

 GET /books/?sex=man&name=Professional HTTP/1.1Host: www.example.comUser-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.6)Gecko/20050225 Firefox/1.0.1Connection: Keep-Alive

POST 请求

 POST / HTTP/1.1Host: www.example.comUser-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.6)Gecko/20050225 Firefox/1.0.1Content-Type: application/x-www-form-urlencodedContent-Length: 40Connection: Keep-Alivesex=man&name=Professional 

区别:

1)url可见性:

get,参数url可见
post,url参数不可见

2)数据传输上:

get,通过拼接url进行传递参数;
post,通过body体传输参数

3)缓存性:

get请求是可以缓存的
post请求不可以缓存

4)后退页面的反应

get请求页面后退时,不产生影响
post请求页面后退时,会重新提交请求

5)传输数据的大小

get一般传输数据大小不超过2k-4k(根据浏览器不同,限制不一样,但相差不大)
post请求传输数据的大小根据php.ini 配置文件设定,也可以无限大。

6)安全性

这个也是最不好分析的,原则上post肯定要比get安全,毕竟传输参数时url不可见,但也挡不住部分人闲的没事在那抓包玩。安全性个人觉得是没多大区别的,防君子不防小人就是这个道理。对传递的参数进行加密,其实都一样。

本质区别:

GET产生一个TCP数据包;POST产生两个TCP数据包。

对于GET方式的请求,浏览器会把http header和data一并发送出去,服务器响应200(返回数据);

而对于POST,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok(返回数据)。

2.请求头
浏览器向服务器发送一些状态数据,标识数据等等

一个信息一行,包括信息名:信息值 按行分隔

User-Agent: firefox //表示发送请求的浏览器(请求代理端)是firefox
Host: shop.100.com //表示请求的主机域名(基于域名的虚拟主机就是靠这个头判断的)
Cookie:name=itcast //浏览器携带的cookie数据。
Content-Type: application/x-www-form-urlencoded
Content-Length: 40
Connection: Keep-Alive

注意,请求头信息,需要使用一个空行结束!

3.请求主体
请求代理端项服务器端,发送的请求数据!

典型的就是POST形式发送的表单数据!

get请求,没有请求主体部分!get数据是在请求行中的url上进行传递的!

三、http协议的响应
响应包括:响应行、响应头、响应体

HTTP/1.1 200 0K
Date: Tue,19 Nov 2013 03:08:55 GMT
Server: Apache/2. 2.22 (Win32) PHP/5.3. 13
X- -Powered -By: PHP/5. 3.13
Content-Length: 16
Content- Type: text/html

1.响应行
响应行包括:协议版本、状态码、状态消息

典型的:

1xx:消息

2xx:成功

3xx:请求被重定向

4xx:浏览器端错误

5xx:服务器端错误

典型:

500 服务器内部错误

404 请求的页面没有找到

403 没有权限

200 请求成功

2.响应头
Content-Type: text/html 内容类型,告知浏览器接下来发送的响应主体数据是什么格式!

Content-Length: 响应主体数据的长度!

Date: 响应的时间。GMT时间!

3.响应主体
主要的响应数据,在浏览器的主体区域显示的数据都是相应主体!

注意,每行,包括相应行和响应头,都需要一个 \r\n结尾
 

四、HTTPS协议及密码学基础名字

戳我跳转

http://www.lryc.cn/news/22298.html

相关文章:

  • 【golang/go语言】Go语言之反射
  • Java+Swing+Mysql实现超市管理系统
  • 华为OD机试题,用 Java 解【机器人走迷宫】问题
  • 软件测试基本概念
  • 数学建模介绍
  • 【LVGL】学习笔记--(2)GUI Guider的使用
  • OpenCV-PyQT项目实战(6)项目案例02:滚动条应用
  • 3 决策树及Python实现
  • 小程序和Vue+uniapp+unicloud培训课件
  • C语言--指针进阶2
  • 【步进电机和 Arduino】
  • 【面试一:|和||、和区别】
  • 【一天一门编程语言】使用汇编语言实现斐波那契数列
  • RabbitMQ实现死信队列
  • 【Linux】安装Tomcat教程
  • 学习笔记之Vuex(五)
  • SSM知识快速复习
  • 【Linux】安装MySQL
  • 【深度学习】手把手教你开发自己的深度学习模板
  • 一个诡异的 Pulsar InterruptedException 异常
  • Java岗面试题--Java并发(volatile 专题)
  • Java---打家劫舍ⅠⅡ
  • MySQL Lesson4
  • 浅谈权限获取方法之文件上传
  • 资产设备防拆标签安全防护和资产定位解决方案
  • 企业电子招标采购源码之电子招标投标全流程!
  • 【考研408】计算机网络笔记
  • [C++]继承
  • 优化知识管理方法丨整理零碎信息,提高数据价值
  • Windows操作系统的体系结构、运行环境和运行状态