IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> jmeter基础知识-第三天学习 20220126 -> 正文阅读

[网络协议]jmeter基础知识-第三天学习 20220126

cookie概念

cookie 是一个非常具体的东西,指的就是浏览器里面能永久存储的一种数据。跟服务器没啥关系,仅仅是浏览器实现的一种数据存储功能。

cookie由服务器生成,发送给浏览器,浏览器把cookie以KV形式存储到某个目录下的文本文件中,下一次请求同一网站时会把该cookie发送给服务器。由于cookie是存在客户端上的,所以浏览器加入了一些限制确保cookie不会被恶意使用,同时不会占据太多磁盘空间。所以每个域的cookie数量

是有限制的。

客户端设置

document.cookie?=?
  • 客户端可以设置cookie的一下选项: expires, domain, path, secure(只有在https协议的网页中, 客户端设置secure类型cookie才能生效), 但无法设置httpOnly选项

设置cookie => cookie被自动添加到request?header中 => 服务端接收到cookie

服务端设置

不管你是请求一个资源文件(如html/js/css/图片), 还是发送一个ajax请求, 服务端都会返回response.而response header中有一项叫set-cookie, 是服务端专门用来设置cookie的;

  • 一个set-cookie只能设置一个cookie, 当你想设置多个, 需要添加同样多的set-cookie
  • 服务端可以设置cookie的所有选项: expires, domain, path, secure, HttpOnly
  • Path –?路径
  • Domain –?
  • Secure –?安全
  • Expires –?过期时间

哈哈 恍然大悟,以前只是简单的以为cookie只是一种浏览器存储数据的行为,没想到通过上面大佬的分享,这里面还有那么多有意思的过程:比如cookie其实在客户端会设置好几个选项,然后通过通过请求头发送给服务端,服务端再把客户端cookie的选项需要的值通过响应头set-cookie传给客户端,客户端把服务端拿到的cookie给保存下来,下一次再发送同样的请求的时候,直接用cookie即可。当然cookie里面包括服务端给的uid和token,我所理解的cookie就是客户端对服务端返回的具有验证性数据的一个封装。

http请求和响应的过程:

首先客户端发送第一次请求,

服务端会把响应结果以及把cookie通过响应头返回给客户端,并种上cookie(这里面是有uid和token信息的)

下一次客户端再次请求的时候,直接拿这个cookie到服务器获取数据

服务器返回数据给客户端

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Y-q5oOz5aW95aW95YGa5rWL6K-V,size_20,color_FFFFFF,t_70,g_se,x_16

实战:

获取登录接口的uid和token,作为下一个请求的cookie来使用

1.首先创建一个登录的取样器

2.添加一个信息头管理器(表明登录时候post提交的正文体的类型)

3.添加一个cookie管理器(里面不用填信息,因为登录请求以后,服务器会种cookie给浏览器,但是现在没有浏览器,所以需要给一个保存cookie的地方,给jmeter做标识)

4.添加一个边界提取器,因为uid=XX,token=XX,这种类型使用边界提取器比较简单

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Y-q5oOz5aW95aW95YGa5rWL6K-V,size_20,color_FFFFFF,t_70,g_se,x_16

注意点:

1:代表主请求和子请求 2:代表主请求 3:代表子请求

因为这个登录接口,第一次请求发生了重定向,返回cookie信息是第一次302时候响应信息带的;

第二次请求服务端直接200返回响应信息,是没有cookie的。

?所以需要勾选3:子请求,也就是第一次的请求,当然选择3也可以,主请求和子请求都包括了

要检查的字段选择信息头,因为cookie是在信息头里面带的。

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Y-q5oOz5aW95aW95YGa5rWL6K-V,size_20,color_FFFFFF,t_70,g_se,x_16

5:添加一个http取样器和信息头管理器,需要把我们提取到的uid和token传到信息头里面

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Y-q5oOz5aW95aW95YGa5rWL6K-V,size_20,color_FFFFFF,t_70,g_se,x_16

?JSON提取器:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Y-q5oOz5aW95aW95YGa5rWL6K-V,size_20,color_FFFFFF,t_70,g_se,x_16

1:变量名称

2:json path表达式规则如下

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Y-q5oOz5aW95aW95YGa5rWL6K-V,size_20,color_FFFFFF,t_70,g_se,x_16

3:添加一个取样器,把从登录接口里面提取到的uid和token放到新的取样器里面,通过信息头管理器。

?

?谢谢? 谢某人给我的动力,晚安~

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-01-28 12:18:36  更:2022-01-28 12:21:00 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 11:27:18-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码