@crowsi/provider-http-transport

中文文档
0.12.1发布于 2026/10/23Apache-2.0TypeScriptES Module零依赖构建来源已验证近 30 天下载 4018

有明确目的地所有权的 BBB 浏览器 HTTP Egress 运输

中文使用文档
文档目录7 节
  1. 安装和使用
  2. 政策和界限
  3. 全权证书和时间限制
  4. 发展和核查
  5. 产品责任
  6. 本地管理员控制( 第24号)
  7. 只执行工人端口( 新源 API)

@crowsi/提供者-http-transport

日本語

使用有限制的 HTTP 请求,并有明确的 HTTP 源代码政策、 请求/ 答复字节限制和超时 。 基地运输拥有有界HTTP. 仅由节点控制的入境点负责审查业务,提供账户/要求的赠款和注入证书;它不拥有产品API、账户存储或本地保管服务.

安装和使用

发行版本 : 0.11.2在通过之前核实登记册的可用性和来源。 配置传送方式为应用程序审查过的目的地和认证政策.

npm install @crowsi/provider-http-transport
import { createProviderHttpTransport } from '@crowsi/provider-http-transport'
const transport = createProviderHttpTransport({
  allowedOrigins: ['https://provider.example'],
  maximumRequestBytes: 65536,
  maximumResponseBytes: 1048576,
  timeoutMs: 15000
})
// The application owner configures the real destination and credentials.
const result = await transport.request({ url: 'https://provider.example/items' })

政策和界限

  • 发源地必须是无路径的犬形HTTPS发源地,跟踪斜线或用户信息. 拒绝 HTTP, 其他出处或端口, URL 证书, 碎片和重定向 .
  • 承认只得到,POST,PACH,PUT和DELETE。 得到和DEELET 无法携带一具尸体.
  • 测量字符串、 URLSearchParams、 ArrayBuffer/ views 和 Blob 以实际字节大小表示。 在公共合同和运行时间检查中拒绝无法计量的机构,如FormData和溪流。 可变的 URLSearchParams/缓冲/视图机构在同步发送前被复制.
  • 响应流最多接受4096个字节块,包括空块;非字节或过于零散的流被拒绝. 在生产者重新使用其缓冲器之前,会复制春克. 字节限制范围从1字节到16个米B. 超时从1到60000毫秒不等. 默认为64个KiB请求,1个MiB响应和15000ms.

回复 status, (中文(简体) ), statusText, (中文(简体) ), Headers (单位:千美元) Uint8Array 躯体。 应用程序解释 HTTP 错误状态 . 已安装的接取/ body 等待在中止或超时时解决 。 最佳流取消清理不会阻碍完成 . 调用器取消用途 transport/request/aborted; 内部定时器使用 transport/request/timeout; 使用通信失败 transport/request/unavailable的源、大小、方法和重定向失败也可以通过 ProviderTransportError.code。 。 。 .

全权证书和时间限制

呼叫信头被转发到获取;请求的细节不添加到结果中. 运输不生成,存储或日志认证头. 浏览器证书、CORS和饼干默认值保持不变,包括可能的同源饼干. cause 保留原始驱动程序细节并可能包含URL或证书. 日志安全错误代码而不是潜在的敏感原因. fetchImplementation 是一个值得信赖的替换,必须尊重信号和手动重定向。 这种运输并不是一个沙盒,它可以通过一个忽视它们的执行来强制阻止外部通信. 超时限制同步 I/O 等待, 在事件启动暂停或浏览器睡眠时没有真实的时间 .

发展和核查

运行时间:Node.js 22+. 发布检查使用节点.js 24.1.5.0和npm 12.2.0.

npm ci
npm run check
npm test
npm pack

src/*.mts 是类型执行. npm run build 生成 dist/*.mjs 和共同声明,不要编辑或犯规. npm run check 验证Biome格式/lint,严格实施和消费类型,并按要求限定120个物理线. 内部规则是149条非空/非评论线;这些检查强制执行更严格的物理限制. prepack 运行检查、构建和运行时间测试。 拥有者CI额外包装了档案,在取出外安装并验证公共类型,读出/写出/读回,回放拒绝,在发布前逃脱认证拒绝. 在出版前核对一个新鲜的消费者的档案. 合成取/流大小写和只回放适配器覆盖失败路径. 适配器没有建立真正的TLS,浏览器cookie/CORS或客户服务兼容性. 测试没有使用真正的提供者证书或外部邮件API.

使用指南 • 妇女 安全报告 • 妇女 Apache-2.0 许可证 • 妇女 归属

产品责任

本构成部分维持在 乌鸦网/克罗西-运输-创建。使用 产品README 用于组成、使用案例和信任界限.

本地管理员控制( 第24号)

这个 ./local-control 输入点绑定账户并审查操作目录 进入确切的要求计划。 被信任的主人最多要五个人批准一个计划 几分钟。 在获取任何无记名材料之前,执行消耗不透明的赠款; 失败也消耗了它。 未知的操作, 更改请求, 重放, 过期, 重新定向和无约束反应失败关闭。 提供方的错误不重复 . 成功的请求不能证明完整的许可清单.

在取得证书或执行HTTP时仍可撤销赠款. 撤销信号取消并压制成功收件;无法撤销 已发送远程信件 . ProviderExecutionError.outcome 区分 not-started, (中文(简体) ), not-completed 财务报告和审定财务报表 indeterminate-write。读回实际 提供者在考虑对不确定的写作进行重试之前声明 . HTTP 204/205生产 data: null; 意外的非空地被拒绝. 业务元数据和原产地政策在登记时复制. discard 删除未使用的计划;废弃的计划在5分钟后失效.

prepare, (中文(简体) ), discard, (中文(简体) ), approve, (中文(简体) ), revoke 财务报告和审定财务报表 execute 属于所有者构成. 只给生成的代码限制执行端口和审查过的赠款, 绝不 批准、认证来源或可变主机环境。 这个图书馆是 不是一个进程沙盒或证书守护进程。 使用 Crowsi 工作量/保管 执行未信任代码时的边界。 JavaScript 证书字符串被持有 在信任的主机内,无法保证本土-记忆零化.

测试只使用注入的证书和假的 HTTP; 没有真正的登录, 密钥环, 提供商账户或开具账单。 唯一明确的拥有者 本地命令/ keyring 适配器是选入的,从未在导入时运行 .

通用经纪人支持JSON的回应,每笔赠款一个限定范围HTTP请求, 并且没有自动标记或投票。 每一个后续行动都需要另一个计划 和赠与。 二进制财务报告需要另行审核解码.

只执行工人端口( 新源 API)

./execute-port 曝光情况 createExecutePort(control)业主登记一个准确的经核准的计划/许可证,只发给孤立工人 { grantId, requestDigest } 加上手柄运输 登记、批准、证书来源和吊销仍只属于所有人。 额外字段、替代文摘、未知/撤销的赠款和重播均被拒绝。 见 组成和操场. 这个新的入门点没有包含在已公布的0.11.2档案中;孤立的候选消费者在新版发布前验证已改变的来源.

control.describe() 返回复制的账户/来源/操作目录,而不获取证书或提出 HTTP 请求。 它的许可状态是 not-observed:宣布的要求不是有效的IAM权利. 将此目录交给信任的管理员 UI, 而生成的工人只接收已注册的执行请求 .

版本与发布记录

@crowsi/provider-http-transport 共发布 8 个版本,首次发布于 2026/10/05;过去 12 个月发布了 8 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.12.1latest2026/10/2318 天前
0.11.22026/10/1229 天前
0.11.12026/10/1229 天前
0.11.02026/10/1229 天前
0.10.22026/10/101 个月前
0.10.12026/10/061 个月前

关于 @crowsi/provider-http-transport 的常见问题

@crowsi/provider-http-transport 是什么?

有明确目的地所有权的 BBB 浏览器 HTTP Egress 运输

如何安装 @crowsi/provider-http-transport?

在项目目录运行 npm install @crowsi/provider-http-transport,或使用 pnpm add / yarn add / bun add。

@crowsi/provider-http-transport 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@crowsi/provider-http-transport 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@crowsi/provider-http-transport 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=22。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@crowsi/provider-http-transport 可以商用吗?

@crowsi/provider-http-transport 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@crowsi/provider-http-transport 的下载量有多少?

根据 npm 官方下载统计,@crowsi/provider-http-transport 在 2026/10/11 – 2026/11/09 这 30 天内被下载 4,018 次,日均约 134 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@crowsi/provider-http-transport 还在维护吗?

最新版本 0.12.1 发布于 2026/10/23(18 天前);至今共发布 8 个版本,其中过去 12 个月发布了 8 个;首次发布于 2026/10/05。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。