07 2025 档案

摘要:第7章 高级主题 7.1 自定义客户端连接 某些场景下需自定义HTTP消息传输逻辑(如爬虫需强制接受畸形响应头)。自定义流程: 步骤1:自定义消息解析器 class MyLineParser extends BasicLineParser { @Override public Header pars 阅读全文
posted @ 2025-07-24 14:17 hqq的进阶日记 阅读(18) 评论(0) 推荐(0)
摘要:第6章 HTTP缓存 6.1 基本概念 HttpClient缓存模块为HttpClient提供了符合HTTP/1.1标准的缓存层(相当于浏览器的缓存)。其实现采用责任链设计模式,缓存版HttpClient可直接替代默认的非缓存版本:能从缓存直接响应的请求不会访问源服务器。当缓存条目过期时,系统会自动 阅读全文
posted @ 2025-07-24 14:11 hqq的进阶日记 阅读(21) 评论(0) 推荐(0)
摘要:第5章 流式API 5.1 易用的门面API 从4.2版本开始,HttpClient提供了一种基于流式接口概念的易用门面API。该API仅暴露HttpClient最核心的功能,适用于不需要HttpClient全部灵活性的简单场景。例如,流式门面API让用户无需手动管理连接和资源释放。 流式API调用 阅读全文
posted @ 2025-07-24 13:45 hqq的进阶日记 阅读(50) 评论(0) 推荐(0)
摘要:第四章 HTTP认证 HttpClient全面支持HTTP标准认证方案及NTLM、SPNEGO等非标方案。 4.1 用户凭证 用户认证需凭证验证身份,最简形式是用户名/密码对。 UsernamePasswordCredentials类实现包含安全主体和明文密码的凭证,适用于标准HTTP认证: Use 阅读全文
posted @ 2025-07-24 13:32 hqq的进阶日记 阅读(16) 评论(0) 推荐(0)
摘要:精简翻译: 3.1 HTTP Cookies Cookie是HTTP代理与服务器交换的会话状态令牌,核心组成: 名称/值对(必需) 作用域名(domain) 路径范围(path) 有效期(max-age) // 创建客户端Cookie BasicClientCookie cookie = new B 阅读全文
posted @ 2025-07-24 10:39 hqq的进阶日记 阅读(26) 评论(0) 推荐(0)
摘要:精简翻译: 2.1 连接持久化 ✅ 核心价值:复用TCP连接减少握手开销(尤其对小报文) ✅ 实现方式: HTTP/1.1 默认支持连接复用 HTTP/1.0 通过Keep-Alive头显式声明 2.2 连接路由 🚦 三种路由类型: 普通路由:直连目标或单代理 隧道路由:通过代理链连接目标(如Pr 阅读全文
posted @ 2025-07-24 10:30 hqq的进阶日记 阅读(28) 评论(0) 推荐(0)
摘要:通俗解释: 场景类比:快递员送包裹 终止请求 快递员送货卡在半路(请求阻塞) 你拨打紧急终止电话(abort())→ 快递员立即放弃任务并返回(抛出异常释放资源) 重定向处理 快递员发现收件人搬家(302重定向): 普通模式: ✅ 新地址在同城 → 自动转送 ❌ 新地址需空运(违反规则)→ 停止配送 阅读全文
posted @ 2025-07-24 10:22 hqq的进阶日记 阅读(41) 评论(0) 推荐(0)
摘要:以下是对HTTP异常处理内容的翻译、知识点提炼及通俗解释: 通俗解释: 场景类比:网购订单系统 异常类型 网络抖动(IOException) → 快递员联系不上你(可重试) 协议错误(HttpException) → 填错收货地址(需人工修正) 幂等性重要性 你点击"付款"但网络卡顿 → 重复提交 阅读全文
posted @ 2025-07-24 10:10 hqq的进阶日记 阅读(18) 评论(0) 推荐(0)
摘要:通俗解释 想象HTTP拦截器是快递分拣流水线上的工人: 1. 各司其职 工人A专贴"易碎品"标签(处理头部) 工人B专做防震包装(内容压缩) 工人C专做礼品盒(装饰器模式包装) 2. 协作方式 工人们通过共享记事本(HTTP上下文) 传递信息 例如记录当前包裹是今天第100件(跨请求计数器) 3. 阅读全文
posted @ 2025-07-24 09:44 hqq的进阶日记 阅读(11) 评论(0) 推荐(0)
摘要:翻译: 1.3. HTTP 执行上下文 HTTP 设计初衷是无状态的请求-响应协议,但实际应用常需在多个逻辑关联的请求间保持状态信息。为此,HttpClient 允许在特定执行上下文(HTTP Context)中执行请求。通过在连续请求间复用相同上下文,多个逻辑关联的请求可组成逻辑会话。HTTP 上 阅读全文
posted @ 2025-07-22 17:23 hqq的进阶日记 阅读(16) 评论(0) 推荐(0)
摘要:来自官方文档 HttpClient 接口 HttpClient 接口是 HTTP 请求执行的核心契约。它对请求执行过程不做具体限制,将连接管理、状态维护、认证和重定向等细节交由具体实现处理。这种设计便于通过响应缓存等功能增强接口。 通常 HttpClient 实现作为门面,聚合多个专用处理器或策略接 阅读全文
posted @ 2025-07-22 17:14 hqq的进阶日记 阅读(38) 评论(0) 推荐(0)
摘要:重点概括 实体不是数据本身,而是数据+元数据的封装器这个本质。 比如:信封(元数据)里面装着实际货物(数据) 一、专业术语解读 1. 定义 HttpEntity 是 Apache HttpClient 中的核心接口,代表可携带内容的 HTTP 消息实体(如请求体或响应体)。它封装了: 内容数据(二进 阅读全文
posted @ 2025-07-18 18:04 hqq的进阶日记 阅读(28) 评论(0) 推荐(0)
摘要:请求执行(Request execution) 1.什么是请求执行 Request execution 是指从发送HTTP请求到获取响应整个过程的实现机制 HttpClient 的核心功能是执行 HTTP 方法。HTTP 方法的执行涉及一次或多次 HTTP 请求/响应交换,通常由 HttpClien 阅读全文
posted @ 2025-07-18 18:04 hqq的进阶日记 阅读(39) 评论(0) 推荐(0)
摘要:理解“流式”(Streamed)的概念其实可以类比水流,这是最贴近本质的比喻。我用生活化的方式为你解释: 🌊 核心比喻:水流管道 想象你要把河里的水运到家里: 传统方式(非流式): 雇人用桶把整条河的水一次性全装完 → 用卡车运回家 → 倒进你家水池。 ❌ 问题:需要极大仓库(内存),小河尚可,长 阅读全文
posted @ 2025-07-18 16:37 hqq的进阶日记 阅读(72) 评论(0) 推荐(0)
摘要:在工作中,搭建接口自动化框架时,使用了Apache HttpClient 库发起HTTP请求,故系统化总结一下其中的知识点 1.什么是Apache HttpClient 4.5.x Apache HttpClient 4.5.x 是一个功能强大的 Java HTTP 客户端库,其核心组件设计遵循模块 阅读全文
posted @ 2025-07-18 13:39 hqq的进阶日记 阅读(45) 评论(0) 推荐(0)
摘要:当前工作中,Restful接口总是遇到application/json数据格式,故对json格式做一个总结 JSON格式核心规则 1.两种基础结构 对象(Object): 键值对集合,用{}包裹 {"key":value} 数组(Array):有序值列表,用[]包裹 [value1,value2] 阅读全文
posted @ 2025-07-18 11:13 hqq的进阶日记 阅读(1034) 评论(0) 推荐(0)
摘要:做一个简单的基于Java+TestNG+Allure的自动化报告demo 1 环境准备 JDK 1.8+ Maven 3.6+ IntelliJ IDEA(推荐) 2 项目结构 src ├── main │ └── java │ └── com │ └── example │ └── utils │ 阅读全文
posted @ 2025-07-14 18:41 hqq的进阶日记 阅读(107) 评论(0) 推荐(0)