马上注册,结交更多易友,享用更多功能,让你轻松玩转觅风论坛。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
HTTPClient.dll 是一个用 Go 语言开发的高性能 HTTP 客户端动态链接库,
可以被易语言、C/C++、C#、Python 等支持调用 DLL 的编程语言使用。
底层基于 imroc/req 库,原生支持 TLS 指纹伪造、HTTP/2、自动编解码
等现代 HTTP 特性,比易语言自带的 WinHTTP/WinInet 更强大。
═══════════════════════════════════════════════════
【为什么要开发这个 DLL】
1. 易语言自带的 HTTP 组件功能太弱
- 不支持 HTTP/2
- 没有 TLS 指纹伪装,容易被反爬识别
- Cookie 管理麻烦
- 性能一般
2. Go 语言的 net/http 生态成熟
- 性能高、并发强
- TLS 指纹库丰富(uTLS)
- 代码稳定可靠
3. 用 DLL 的方式让易语言也能用上 Go 的能力
- 易语言负责界面和业务逻辑
- Go 负责底层 HTTP 请求
- 取长补短,各取所长
═══════════════════════════════════════════════════
【核心功能】
◆ TLS 指纹伪装
支持 8 种指纹模式:随机、Chrome、Edge、Firefox、
Safari、Android、iOS、360浏览器
可以绕过基于 JA3 指纹的反爬检测
◆ 完整 HTTP 方法
GET / POST / PUT / DELETE / PATCH / HEAD / OPTIONS
全部支持
◆ 请求头管理
- 全局公共请求头(所有请求共用)
- 单次请求头(仅本次有效)
- 支持非标准头名(大小写敏感保留)
◆ Cookie 管理
- DLL 内置 CookieJar 自动管理
- 也可以关闭,由易语言层手动管理
- 支持从响应 Set-Cookie 自动提取
◆ 代理支持
- HTTP 代理
- HTTPS 代理
- SOCKS5 代理
- 支持账号密码认证
◆ 超时控制
- 总请求超时
- TLS 握手超时
- 毫秒级精确控制
◆ 证书管理
- 自定义根证书
- 客户端双向认证证书
- 支持 PEM 格式
◆ 响应数据
- 文本响应(UTF-8)
- 二进制响应(字节集)
- 响应头
- 状态码 / 状态文本
- 重定向地址 Location
◆ 内存保护
- 响应体大小限制,防止大文件撑爆内存
- 所有导出函数 panic 自动恢复,不会崩宿主
- 互斥锁保护,并发安全
- 实例销毁时彻底释放资源
═══════════════════════════════════════════════════
【适用场景】
◆ 网页爬虫 / 数据采集
TLS 指纹伪装可以绕过大部分反爬检测
◆ API 接口调用
支持各种 RESTful API,JSON/表单/二进制上传
◆ 自动化测试
模拟不同浏览器的请求特征
◆ 批量请求
Go 底层并发性能好,适合多线程请求
◆ 需要高安全性的场景
双向证书认证、自定义根证书
═══════════════════════════════════════════════════
【技术特点】
开发语言 :Go 1.x
HTTP 库 :imroc/req v3
TLS 指纹 :uTLS
编译模式:CGO shared library
文件体积:约 11 MB(已优化)
支持系统:Windows x64
线程安全:是(每个实例独立锁)
推荐配合鱼翅多线程使用,目前测压 200 线程
(易语言本身没有 200 线程)10 万次请求
长时间运行稳定。本模块接口写法全部按照
鱼翅 HTTP 的习惯设计,上手即用。
|
|