superpms/helper-fetch

pms helper fetch

Maintainers

Package info

github.com/superpms/helper-fetch

pkg:composer/superpms/helper-fetch

Statistics

Installs: 17

Dependents: 1

Suggesters: 0

Stars: 0

Open Issues: 0

v1.0.x-dev 2026-05-21 05:34 UTC

This package is auto-updated.

Last update: 2026-05-21 05:34:49 UTC


README

superpms/helper-fetch 是 SuperPMS 自研 composer 包里的轻量 HTTP 请求封装。它只负责把 PHP cURL 的常用请求能力包装成链式 Client 和响应读取对象 Response,供 server 端业务代码或上层 helper 包按需实例化使用。

这个包不参与框架启动挂载,不提供路由、业务流程、鉴权、签名、模型或页面能力;这些能力如果存在,应在调用方或上层包中完成。

安装与依赖

composer require superpms/helper-fetch

包声明位于 composer.json

  • 包名:superpms/helper-fetch
  • PHP 要求:>=8.1
  • 扩展要求:ext-curl
  • 自动加载:pms\\ -> src/pms/
  • 命名空间:pms\helper\fetch

server 端当前通过 server/composer.json 依赖 superpms/helper-fetch:^1.0.0

快速开始

use pms\helper\fetch\Client;

$response = (new Client())
    ->setUrl('https://example.com/api')
    ->setMethod('GET')
    ->setData(['page' => 1])
    ->execute();

$data = $response->getJsonBody(true);

Client 会维护一个 cURL 句柄,设置 URL、方法、请求头、Cookie、请求数据、超时、Referer 和 User-Agent 后,通过 execute() 返回 pms\helper\fetch\Response

核心模块

  • Client:请求构建与执行入口,封装默认 cURL 选项、请求方法、参数拼接、Header、Cookie、超时、Referer、User-Agent。
  • Response:响应读取对象,保留原始响应、响应体、JSON/XML 解析和 curl_getinfo() 读取;Header/Cookie 路径当前存在实现边界,不能当成稳定 Header 数组能力使用。

文档索引

  • docs/README.md:包内文档入口与阅读路线。
  • 快速开始:安装前提、直接调用示例、server 端当前使用方式。
  • Client 请求构建:公开方法、默认选项、GET/POST/HEAD 行为。
  • Response 响应读取:响应体、JSON/XML、Header/Cookie 实现边界、cURL info。
  • 模块边界:helper-fetch 与 helper-hrb、kit、server 业务代码的职责分界。
  • 内部实现:cURL 句柄生命周期、选项应用、异常触发点。
  • API 参考:公开类、常量、方法清单。

边界说明

  • helper-fetch 是底层 HTTP 执行器,不是业务请求协议层。
  • 业务签名、统一参数、回调转换、错误码解释,应放在调用方或 helper-hrb 等上层包。
  • 包内没有框架 Facade、Service 注册、配置合并、Hook 或自动启动逻辑。
  • 当前默认关闭 SSL 证书校验,调用方如接入安全敏感外部服务,应显式评估并通过 addOptions() 覆盖相关 cURL 选项。