# @adobe/aio-lib-core-networking 中文文档

规范地址：https://npmcn.com/package/%40adobe/aio-lib-core-networking/

版本：5\.1\.0
npm 元数据更新时间：2026-10-01T01:32:17.257Z
中文译文更新时间：2026-11-05T18:13:30.639Z
软件包许可：Apache-2\.0

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40adobe/aio-lib-core-networking
原文对照：https://npmcn.com/package/%40adobe/aio-lib-core-networking/?lang=original
项目主页：https://github.com/adobe/aio-lib-core-networking
源码仓库：https://github.com/adobe/aio-lib-core-networking

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：346 kB，34 个文件
- 模块格式：CommonJS
- TypeScript 类型：未声明
- Node.js 要求：\>=18
- 运行依赖：8 个
- 首次发布：2020-02-24T08:13:09.613Z
- 最新版本发布：2025-11-17T09:00:08.469Z
- 近 30 天下载量：94455（2026-10-05 至 2026-11-03，npm 官方下载统计）
- 已发布版本数：14（近 12 个月 1 个）

## 中文简介

Adobe I/O Lib 核心网络

## 安装

```sh
npm install @adobe/aio-lib-core-networking
```

也可以使用：`pnpm add @adobe/aio-lib-core-networking`、`yarn add @adobe/aio-lib-core-networking`、`bun add @adobe/aio-lib-core-networking`

## README

[![Version](https://img.shields.io/npm/v/@adobe/aio-lib-core-networking.svg)](https://npmjs.org/package/@adobe/aio-lib-core-networking) [![Downloads/week](https://img.shields.io/npm/dw/@adobe/aio-lib-core-networking.svg)](https://npmjs.org/package/@adobe/aio-lib-core-networking) [![Node.js CI](https://github.com/adobe/aio-lib-core-networking/actions/workflows/node.js.yml/badge.svg)](https://github.com/adobe/aio-lib-core-networking/actions/workflows/node.js.yml) [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) [![Codecov Coverage](https://img.shields.io/codecov/c/github/adobe/aio-lib-core-networking/master.svg?style=flat-square)](https://codecov.io/gh/adobe/aio-lib-core-networking/)

# Adobe I/O 核心网络Lib

### 安装

```bash
$ npm install @adobe/aio-lib-core-networking
```

### 使用量

1.  初始化 SDK

```javascript
const { HttpExponentialBackoff, createFetch } = require('@adobe/aio-lib-core-networking')
const fetchRetry = new HttpExponentialBackoff()
const proxyFetch = createFetch()
```

2.  使用已初始化的 SDK 调用方法

```javascript

const { HttpExponentialBackoff, createFetch } = require('@adobe/aio-lib-core-networking')
const fetchRetry = new HttpExponentialBackoff()
async function sdkTest() {

  return new Promise((resolve, reject) => {
    fetchRetry.exponentialBackoff(url, requestOptions, retryOptions, retryOn, retryDelay)
    .then((response) => {
      if (!response.ok) {
        throw Error(reduceError(response))
      }
      resolve(response.json())
    })
    .catch(err => {
      reject(
        new codes.ERROR_GET_SOMETHING({ sdkDetails, messageValues: err }))
    })
  }) 
}

let proxyFetch 
// this will get the proxy settings from the the HTTP_PROXY or HTTPS_PROXY environment variables, if set
proxyFetch = createFetch()

// this will use the passed in proxy settings. Embed basic auth in the url, if required
proxyFetch = createFetch({ proxyUrl: 'http://my.proxy:8080' })

// if the proxy settings are not passed in, and not available in the HTTP_PROXY or HTTPS_PROXY environment variables, it falls back to a simple fetch
const simpleFetch = createFetch()
```

## 类

[责任 备份](https://npmcn.com/package/%40adobe/aio-lib-core-networking/#readme-HttpExponentialBackoff)

此类提供了使用重试执行获取的方法 . 复试使用指数后退策略 默认值设置为最多 3次重试, 初始延迟为 100 秒

[代理图像](https://npmcn.com/package/%40adobe/aio-lib-core-networking/#readme-ProxyFetch)

这为获取提供了包装, 方便代理认证授权 .

## 职能

[创建 Fetch( \[代理选项\])](https://npmcn.com/package/%40adobe/aio-lib-core-networking/#readme-createFetch) ⇒ `function`

根据代理设置返回相应的获取函数 .

[页眉后重写( 标题)](https://npmcn.com/package/%40adobe/aio-lib-core-networking/#readme-parseRetryAfterHeader) ⇒ `number`

解析重试后页眉 谱: [https://tools.ietf.org/html/rfc7231#section-7.1.3 页面存档备份,存于互联网档案馆](https://tools.ietf.org/html/rfc7231#section-7.1.3)

## 类型防御

[重试选项](https://npmcn.com/package/%40adobe/aio-lib-core-networking/#readme-RetryOptions) 数字 : `object`

获取重试选项

[代理选项](https://npmcn.com/package/%40adobe/aio-lib-core-networking/#readme-ProxyOptions) 数字 : `object`

代理代理代理选项

## 责任 备份

此类提供了使用重试执行获取的方法 . 复试使用指数后退策略 默认值设置为最多 3次重试, 初始延迟为 100 秒

**仁爱**: 全球类

-   [责任 备份](https://npmcn.com/package/%40adobe/aio-lib-core-networking/#readme-HttpExponentialBackoff)
    -   [新建 Http 责任包( \[选项\])](https://npmcn.com/package/%40adobe/aio-lib-core-networking/#readme-new_HttpExponentialBackoff_new)
    -   [.expresentBackoff(url, request options, \[重试可选), \[重试可选), \[重试延后\]](https://npmcn.com/package/%40adobe/aio-lib-core-networking/#readme-HttpExponentialBackoff+exponentialBackoff) ⇒ `Promise.<Response>`

### 新建 Http 责任包( \[选项\])

创建 HtpExpentive 实例 备份

| 参数 | 类型 | 说明 |
| --- | --- | --- |
| \[可选 | `object` | 配置选项 |
| \[选项.loglevel\] | `string` | 要使用的日志级别( 默认: process.env.LOG LEVEL 或 “ info” ) |
| \[可选.log Retry Afterseconds\] (英语) | `number` | 如果 Retry-After 标题大于秒数,则记录警告的秒数。 设定为 0 以禁用 . |

### httpExpensiveBackoff.expresentiveBackoff(url, request options, \[重试可选), \[重试可选\], \[重试可选), \[重试可选) QQ `Promise.<Response>`

此函数将重试连接到 URL 端点, 与 指数反转。 返回承诺.

**仁爱**: 实例方法 [`HttpExponentialBackoff`](https://npmcn.com/package/%40adobe/aio-lib-core-networking/#readme-HttpExponentialBackoff)  
**回返**数字 : `Promise.<Response>` - 代表http响应的承诺对象

| 参数 | 类型 | 说明 |
| --- | --- | --- |
| url 密码 | `string` | 结束点 url |
| 选项 | `object` | `Request` | 请求选项 |
| \[重试选项\] | [`RetryOptions`](https://npmcn.com/package/%40adobe/aio-lib-core-networking/#readme-RetryOptions) | (可选)重试选项 |
| \[回 | `function` | `Array` | (可选)函数或矩阵 。 如果提供, 将使用默认 |
| \[重试延 | `function` | `number` | (可选)函数或编号. 如果提供, 将使用默认 |

## 代理图像

这为获取提供了包装, 方便代理认证授权 .

**仁爱**: 全球类

-   [代理图像](https://npmcn.com/package/%40adobe/aio-lib-core-networking/#readme-ProxyFetch)
    -   [新建代理快取( 代理选项)](https://npmcn.com/package/%40adobe/aio-lib-core-networking/#readme-new_ProxyFetch_new)
    -   [.fetch( 资源, 选项)](https://npmcn.com/package/%40adobe/aio-lib-core-networking/#readme-ProxyFetch+fetch) ⇒ `Promise.<Response>`

### 新建代理快取( 代理选项)

以代理认证选项初始化此类

| 参数 | 类型 | 说明 |
| --- | --- | --- |
| 代理选项 | [`ProxyOptions`](https://npmcn.com/package/%40adobe/aio-lib-core-networking/#readme-ProxyOptions) | 连接到 |

### 代理切换. 切换( 资源, 选项) QQ `Promise.<Response>`

获取函数, 使用配置的获取选项, 和代理选项( 在构建器中设置) .

**仁爱**: 实例方法 [`ProxyFetch`](https://npmcn.com/package/%40adobe/aio-lib-core-networking/#readme-ProxyFetch)  
**回返**数字 : `Promise.<Response>` - 代表http响应的承诺对象

| 参数 | 类型 | 说明 |
| --- | --- | --- |
| 资源 | `string` | `Request` | 要获取的 URL 或请求的反对 |
| 选项 | `object` | 获取选项 |

## 创建 Fetch( \[代理选项\]\] QQ `function`

根据代理设置返回相应的获取函数 .

**仁爱**:全球职能  
**回返**数字 : `function` - 获取 API 函数

| 参数 | 类型 | 说明 |
| --- | --- | --- |
| \[替代选项\] | [`ProxyOptions`](https://npmcn.com/package/%40adobe/aio-lib-core-networking/#readme-ProxyOptions) | 代理选项 |

## 解析后页眉( 标题) {} `number`

解析重试后页眉 谱: [https://tools.ietf.org/html/rfc7231#section-7.1.3 页面存档备份,存于互联网档案馆](https://tools.ietf.org/html/rfc7231#section-7.1.3)

**仁爱**:全球职能  
**回返**数字 : `number` - 要睡觉的毫秒数, 直到下一个呼叫, 获取EventsFromJournal

| 参数 | 类型 | 说明 |
| --- | --- | --- |
| 标题 | `string` | 重试后页眉值 |

## 重试选项 : `object`

获取重试选项

**仁爱**: 全局类型def  
**属性**

| 名称 | 类型 | 说明 |
| --- | --- | --- |
| 最大存储量 | `number` | 尝试的最大重试次数( 默认 3) |
| 初始延迟 IMillis | `number` | 以毫秒计的初始延迟( 默认: 100ms) |
| 代理服务器 | [`ProxyOptions`](https://npmcn.com/package/%40adobe/aio-lib-core-networking/#readme-ProxyOptions) | (可选)代理认证选项 |

## 代理选项 : `object`

代理代理代理选项

**仁爱**: 全局类型def  
**属性**

| 名称 | 类型 | 说明 |
| --- | --- | --- |
| 代理用户 | `string` | 代理服务器的 url |
| \[用户名\] | `string` | 基本认证的用户名 |
| \[口 | `string` | 基本认证的密码 |
| 拒绝未授权 | `boolean` | 设置为不拒绝未经授权的服务器证书 |
| \[记录级别\] | `string` | 要使用的日志级别( 默认: process.env.LOG LEVEL 或 “ info” ) |

### 除错日志

```bash
LOG_LEVEL=debug <your_call_here>
```

预留 `LOG_LEVEL` 环境变量和 `debug` 值到引用您函数的调用,在命令行上。 这将为您的 SDK 电话输出大量调试数据 .

### 捐款

欢迎捐款! 读取 [贡献指南](https://npmcn.com/package/%40adobe/aio-lib-core-networking/.github/CONTRIBUTING.md) 更多信息.

### 许可证发放

这个项目根据Apache V2许可证获得许可. 见 [自由主义](https://npmcn.com/package/%40adobe/aio-lib-core-networking/LICENSE) 更多信息.

## 常见问题

### @adobe/aio-lib-core-networking 是什么？

Adobe I/O Lib 核心网络

### 如何安装 @adobe/aio-lib-core-networking？

在项目目录运行 npm install @adobe/aio-lib-core-networking，或使用 pnpm add / yarn add / bun add。

### @adobe/aio-lib-core-networking 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/adobe\_\_aio-lib-core-networking 是否存在。

### @adobe/aio-lib-core-networking 支持 ESM 还是 CommonJS？

以 CommonJS 形式发布，可以直接 require\(\)；在 ES Module 项目中也可以用 import 引入（Node\.js 会把 module\.exports 作为默认导出）。

### @adobe/aio-lib-core-networking 需要什么版本的 Node\.js？

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

### @adobe/aio-lib-core-networking 可以商用吗？

@adobe/aio-lib-core-networking 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### @adobe/aio-lib-core-networking 的下载量有多少？

根据 npm 官方下载统计，@adobe/aio-lib-core-networking 在 2026/10/05 – 2026/11/03 这 30 天内被下载 94,455 次，日均约 3,149 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @adobe/aio-lib-core-networking 还在维护吗？

最新版本 5\.1\.0 发布于 2025/11/17（11 个月前）；至今共发布 14 个版本，其中过去 12 个月发布了 1 个；首次发布于 2020/02/24。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

