# @d-fischer/cross-fetch 中文文档

规范地址：https://npmcn.com/package/%40d-fischer/cross-fetch/

版本：5\.0\.5
npm 元数据更新时间：2024-02-11T20:19:18.601Z
中文译文更新时间：2026-11-11T07:38:28.782Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40d-fischer/cross-fetch
原文对照：https://npmcn.com/package/%40d-fischer/cross-fetch/?lang=original
项目主页：https://github.com/d-fischer/cross-fetch
源码仓库：https://github.com/d-fischer/cross-fetch

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

- 包体积（解压后）：78.2 kB，14 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：1 个
- 首次发布：2020-04-02T18:39:30.493Z
- 最新版本发布：2024-02-11T20:19:18.429Z
- 近 30 天下载量：22828（2026-10-11 至 2026-11-09，npm 官方下载统计）
- 已发布版本数：12（近 12 个月 0 个）

## 中文简介

通用 WHWG 为节点、 浏览器和回放本地获取 API

## 安装

```sh
npm install @d-fischer/cross-fetch
```

也可以使用：`pnpm add @d-fischer/cross-fetch`、`yarn add @d-fischer/cross-fetch`、`bun add @d-fischer/cross-fetch`

## README

# 横切  
[![NPM Version](https://img.shields.io/npm/v/cross-fetch.svg?branch=main)](https://www.npmjs.com/package/cross-fetch) [![Downloads Per Week](https://img.shields.io/npm/dw/cross-fetch.svg?color=blue)](https://www.npmjs.com/package/cross-fetch) [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT) [![CI](https://github.com/lquixada/cross-fetch/actions/workflows/ci.yml/badge.svg)](https://github.com/lquixada/cross-fetch/actions/workflows/ci.yml) [![codecov](https://codecov.io/gh/lquixada/cross-fetch/branch/main/graph/badge.svg)](https://codecov.io/gh/lquixada/cross-fetch)

Universal WHWG 为节点获取 API,浏览器和React Industrial 。 横截面真正发光的情景是,同一个JavaScript代码库需要在不同平台上运行.

-   **平台不可知论**: 浏览器、节点或反应原生
-   **可选多填充**: 是否加入全球对象取决于您
-   **简单接口**: 没有即时状态, 没有配置和额外依赖
-   **遵守哪一个工作组**: 无论您的代码运行在哪里, 它都一样
-   **类型脚本支持**:在类型方面有更好的发展经验.

* * *

## 目录

-   [安装](https://npmcn.com/package/%40d-fischer/cross-fetch/#readme-install)
-   [使用量](https://npmcn.com/package/%40d-fischer/cross-fetch/#readme-usage)
-   [演示和 API](https://npmcn.com/package/%40d-fischer/cross-fetch/#readme-demo--api)
-   [财务问题](https://npmcn.com/package/%40d-fischer/cross-fetch/#readme-faq)
-   [谢谢](https://npmcn.com/package/%40d-fischer/cross-fetch/#readme-thanks)
-   [许可证](https://npmcn.com/package/%40d-fischer/cross-fetch/#readme-license)
-   [作者](https://npmcn.com/package/%40d-fischer/cross-fetch/#readme-author)

* * *

## 安装

```sh
npm install --save cross-fetch
```

作为一名 [填马](https://github.com/sindresorhus/ponyfill)数字 :

```javascript
// Using ES6 modules with Babel or TypeScript
import fetch from 'cross-fetch';

// Using CommonJS modules
const fetch = require('cross-fetch');
```

作为多填充:

```javascript
// Using ES6 modules
import 'cross-fetch/polyfill';

// Using CommonJS modules
require('cross-fetch/polyfill');
```

CDN的建筑也可用于unpkg:

```html
<script src="//unpkg.com/cross-fetch/dist/cross-fetch.js"></script>
```

这将获取函数添加到窗口对象中 。 注意这不符合UMD兼容性.

* * *

## 使用量

与 [承诺](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise)数字 :

```javascript
import fetch from 'cross-fetch';
// Or just: import 'cross-fetch/polyfill';

fetch('//api.github.com/users/lquixada')
  .then(res => {
    if (res.status >= 400) {
      throw new Error("Bad response from server");
    }
    return res.json();
  })
  .then(user => {
    console.log(user);
  })
  .catch(err => {
    console.error(err);
  });
```

与 [自动/等待](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/async_function)数字 :

```javascript
import fetch from 'cross-fetch';
// Or just: import 'cross-fetch/polyfill';

(async () => {
  try {
    const res = await fetch('//api.github.com/users/lquixada');
    
    if (res.status >= 400) {
      throw new Error("Bad response from server");
    }
    
    const user = await res.json();
  
    console.log(user);
  } catch (err) {
    console.error(err);
  }
})();
```

> ⚠️ **3⁄4 ̄ ̧漯B**:如果处于不支持互联网探索等承诺的环境,则必须安装ES6承诺兼容多功能. [es6 保证](https://github.com/jakearchibald/es6-promise) 建议.

## 演示和 API

您可以在 [Github 正在取钱](https://github.github.io/fetch/) 页 次 如果你想玩交叉调试,检查我们 [**JSFidle 游乐场**](https://jsfiddle.net/lquixada/3ypqgacp/)。 。 。 .

> **提示**:在各种浏览器上运行小提琴,并设置不同(例如:跨域请求,错误的urls或文本请求). 别忘了在测试套间页打开控制台,到处玩.

## 财务问题

#### 又一个取取库?

我做了很多研究,以便找到一个可以简单,跨平台的取来库,并提供多填充作为选项. 外面有很多自由派 但是没有人能满足这些要求.

#### 为什么不是非对称的?

我最喜欢的图书馆曾经是 [同位素比对](https://github.com/matthew-andrews/isomorphic-fetch) 但它有这个 [错误](https://github.com/matthew-andrews/isomorphic-fetch/issues/125) 阻止它运行 在反应的本土环境中。 似乎不可能修好,因为自2016年以来,没有新的承诺。 这意味着依赖性也已过时.

#### 为什么多填水可能不是一个好主意?

一个字? 风险。 如果未来的光谱变化,调试可能会有问题. 更多关于它 [辛德雷索胡斯的马厩](https://github.com/sindresorhus/ponyfill#how-are-ponyfills-better-than-polyfills) 页 次 随顺相取相取.

#### 如何是横相通相?

就像异形相通,它只是一个代理。 如果你在节点,它能给你 [节点比对](https://github.com/bitinn/node-fetch/) 库中,如果你在浏览器或回放原生软件中,它可以提供github的 [什么缩写](https://github.com/github/fetch/)。同样的策略适用于无论是多填还是小马填.

## 谁在用?

| [![The New York Times](https://npmcn.com/package/%40d-fischer/cross-fetch/docs/images/logo-nytimes.png)](https://www.nytimes.com/) | [![Apollo GraphQL](https://npmcn.com/package/%40d-fischer/cross-fetch/docs/images/logo-apollo.png)](https://github.com/apollographql/apollo-client/) | [![Facebook](https://npmcn.com/package/%40d-fischer/cross-fetch/docs/images/logo-facebook.png)](https://github.com/facebook/fbjs/) | [![Swagger](https://npmcn.com/package/%40d-fischer/cross-fetch/docs/images/logo-swagger.png)](https://swagger.io/) | [![VulcanJS](https://npmcn.com/package/%40d-fischer/cross-fetch/docs/images/logo-vulcanjs.png)](http://vulcanjs.org/) | [![graphql-request](https://npmcn.com/package/%40d-fischer/cross-fetch/docs/images/logo-graphql-request.png)](https://github.com/prisma/graphql-request) |
| :-: | :-: | :-: | :-: | :-: | :-: |
| 纽约时报 | 阿波罗图形QL | 脸书 | 斯瓦格语Name | 武汉JS | 图克- 请求 |

## 谢谢

深受作品的启发 [马特斯·安德斯](https://github.com/matthew-andrews)工藤给他!

## 许可证

交叉牵引根据 [麻省理工学院许可证](https://github.com/lquixada/cross-fetch/blob/main/LICENSE) © [莱昂纳多·克瓦达](https://twitter.com/lquixada/)

## 作者

| [![@lquixada](https://avatars0.githubusercontent.com/u/195494?v=4&s=96)](https://github.com/lquixada) |
| :-: |
| [@lquixada (英语)](http://www.github.com/lquixada) |

## 常见问题

### @d-fischer/cross-fetch 是什么？

通用 WHWG 为节点、 浏览器和回放本地获取 API

### 如何安装 @d-fischer/cross-fetch？

在项目目录运行 npm install @d-fischer/cross-fetch，或使用 pnpm add / yarn add / bun add。

### @d-fischer/cross-fetch 支持 TypeScript 吗？

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

### @d-fischer/cross-fetch 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @d-fischer/cross-fetch 可以商用吗？

@d-fischer/cross-fetch 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @d-fischer/cross-fetch 的下载量有多少？

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

### @d-fischer/cross-fetch 还在维护吗？

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

