编辑
2025-08-20
测试
00

我们可以从 CSRF Token 的本质、获取逻辑、自动化测试中的应用 三个维度总结核心知识点:

编辑
2025-08-15
前端
00

响应四要素解析

在客户端(如浏览器、requests 代码)向服务器发送请求后,服务器会返

编辑
2025-08-15
测试
00

requests库的使用方法:

在Python的网络请求领域,requests库以其简洁的API、强大的功能和人性化的设计,成为了开发者处理HTTP请求的首选工具。无论是简单的接口调用、复杂的会话维持,还是数据格式处理,requests都能轻松应对。本文将系统梳理requests库的核心用法,从高层便捷API到会话级请求,帮你快速掌握网络请求的精髓。

一、高层便捷API:快速上手的首选

requests库最常用的功能是封装了各类HTTP方法的高层API,这些方法无需手动指定请求类型,底层均通过requests.request()实现,适合快速完成简单请求。

1. 核心方法及作用

方法作用核心参数
requests.get()发送GET请求(用于获取资源)params(URL查询参数)、**kwargs(其他配置)
requests.post()发送POST请求(用于提交数据)data(表单数据)、json(JSON数据)、** kwargs
requests.put()发送PUT请求(用于更新资源)data(更新数据)、**kwargs
requests.delete()发送DELETE请求(用于删除资源)** kwargs
requests.head()发送HEAD请求(仅获取响应头)**kwargs
requests.options()发送OPTIONS请求(获取服务器支持的方法)** kwargs

2. 关键参数解析

  • **kwargs:灵活接收任意关键字参数(如headerscookiestimeout等),是requests灵活性的核心。
    例如:requests.get(url, headers={"User-Agent": "Chrome"}, timeout=10)
编辑
2025-08-14
测试
00

接口自动化的初识

什么是 requests 库?

requests 是 Python 中一个流行的第三方库,专门用于发送 HTTP 请求(如 GET、POST、PUT、DELETE 等),并处理服务器返回的响应。它封装了 Python 内置的 urllib 库,提供了更简洁、易用的 API,让开发者可以轻松实现与 Web 服务器的通信。
通俗点来说,requests 是一个 “模拟浏览器” 的工具 —— 你可以用它向指定的 URL 发送请求(带参数、表单、 headers 等),然后获取服务器返回的状态码、响应体(如 JSON、HTML)等数据。

requests 与自动化测试的关系

在自动化测试中,requests 主要用于 接口自动化测试,是接口测试的核心工具之一,两者的关系体现在以下几个方面:

接口测试的核心工具

现代软件系统(尤其是前后端分离架构)中,接口(API)是模块间、服务间通信的核心。自动化测试需要验证这些接口是否按照预期工作(如返回正确的状态码、数据格式、业务逻辑等)。 requests 可以模拟客户端向接口发送请求(如调用登录接口时发送账号密码,调用查询接口时传递参数),并获取响应结果,从而实现对接口的自动化验证。

编辑
2025-08-09
MySQL
00

MYSQL的六大常见数据类型

在 MySQL 中有六大常见的数据类型(Data Types),即存储数据的不同格式和类别。MySQL 的常用数据类型可归纳为以下六种主要形态(分类),每种形态包含具体的子类型,适用于不同的场景:

1. 整数类型(Integer Types)

用于存储整数(无小数部分的数字),根据取值范围和存储空间分为不同子类型,适合存储计数、ID 等场景。
常用子类型:TINYINT(1 字节,范围 - 128-127 或 0~255)、SMALLINT(2 字节)、MEDIUMINT(3 字节)、INT(4 字节,最常用)、BIGINT(8 字节,适用于大数值如自增 ID)。

2. 浮点 / 定点类型(Floating-Point & Fixed-Point Types)

用于存储带小数的数字,区分 “近似值” 和 “精确值”。
浮点型(近似值):FLOAT(单精度,4 字节)、DOUBLE(双精度,8 字节),适合存储科学计算等对精度要求不极致的场景(可能有精度误差)。
定点型(精确值):DECIMAL(M,D)(M 为总位数,D 为小数位数),适合存储金额、汇率等需精确计算的场景(无精度损失)。

3. 字符串类型(String Types)

用于存储文本、字符序列等,根据长度和存储方式分为不同类型。
定长字符串:CHAR(N)(固定长度 N,不足补空格,适合短文本如手机号、密码哈希)。
变长字符串:VARCHAR(N)(长度可变,按实际内容存储,适合长度不固定的文本如用户名、描述)。
长文本 / 二进制:TEXT(长文本,如文章内容)、BLOB(二进制数据,如图片、文件)。

BLOB类型

在 MySQL 的字符串类型中,除了存储字符数据的CHAR、VARCHAR、TEXT等,还包含专门用于存储二进制数据的BLOB类型(Binary Large Object)。它们同属字符串类型体系,因为本质上都是存储字节序列,只是BLOB针对二进制数据(无字符集概念),而其他字符串类型针对字符数据(依赖字符集编码)。
字符串类型中的BLOB子类型
BLOB用于存储二进制数据(如图片、音频、视频、文件等字节流),根据存储容量分为以下子类型:

类型存储上限适用场景
TINYBLOB最大 255 字节小图标、缩略图、短二进制数据
BLOB最大 65,535 字节(64KB)小型图片(如头像)、短文件
MEDIUMBLOB最大 16,777,215 字节(16MB)中等大小图片、文档(如 PDF)
LONGBLOB最大 4,294,967,295 字节(4GB)大型文件、高清图片、视频片段等