# @blazity/next-image-proxy 中文文档

规范地址：https://npmcn.com/package/%40blazity/next-image-proxy/

版本：1\.0\.2
npm 元数据更新时间：2022-04-04T19:30:24.154Z
中文译文更新时间：2026-11-08T06:29:37.621Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40blazity/next-image-proxy
原文对照：https://npmcn.com/package/%40blazity/next-image-proxy/?lang=original
项目主页：https://github.com/bmstefanski/next-image-proxy#readme
源码仓库：https://github.com/bmstefanski/next-image-proxy

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

- 包体积（解压后）：25.8 kB，12 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：3 个
- peer 依赖：next \>=9\.0\.0，react \>=16\.0\.0，react-dom \>=16\.0\.0
- 首次发布：2022-03-03T23:30:16.093Z
- 最新版本发布：2022-03-04T00:01:48.011Z
- 近 30 天下载量：6095（2026-10-09 至 2026-11-07，npm 官方下载统计）
- 已发布版本数：3（近 12 个月 0 个）

## 中文简介

下一个.js 图像代理 。 使得在下/图像组件中使用动态域成为可能.

## 安装

```sh
npm install @blazity/next-image-proxy
```

也可以使用：`pnpm add @blazity/next-image-proxy`、`yarn add @blazity/next-image-proxy`、`bun add @blazity/next-image-proxy`

## README

# Next.js 图像代理

Next.js 的图像代理 使得在下/图像组件中使用动态域成为可能.

  

[![npm version badge](https://img.shields.io/npm/v/@blazity/next-image-proxy)](https://www.npmjs.com/package/@blazity/next-image-proxy) ![license badge](https://img.shields.io/npm/l/@blazity/next-image-proxy)

  

## 动机

这个库可以使用 `next/image` 有动态域。 如果与外部提供者合作,如Facebook,Instagram,Etsy,Medium等,图像往往有动态子域. 例如,你可能会从 `scontent-akl1-1.cdninstagram.com` 和第二个来自 `scontent-akl3-1.cdninstagram.com`。虽然将它们逐个添加到配置中可以暂时工作,但并不可靠,因为它们可随时改变。 整个问题可以通过增加正则图案来解决 `next.config.js`但不幸的是 Next.js不支持这一点.

如果你想了解关于Next.js在盒子外支持它的讨论,请参见此 [讨论情况](https://github.com/vercel/next.js/discussions/18429) 还有这个 [拉请求](https://github.com/vercel/next.js/pull/27345)

你必须记住,有一些骗子:

-   如果你的regex不够严格,你可以建立安全漏洞
-   由于它是一个代理,它会增加带宽成本. 但是,除非你在做大型项目(即每月要求数以百万计),否则增幅将是微不足道的

## \* 安装

```
$ npm i --save @blazity/next-image-proxy

# or

$ yarn add @blazity/next-image-proxy
```

## 使用时间

设置非常简单, 您只需要添加一个新的 API 路由, 输出一个函数 。 终分名自取.

```tsx
// pages/api/imageProxy.ts

import { withImageProxy } from '@blazity/next-image-proxy'

export default withImageProxy({ whitelistedPatterns: [/^https?:\/\/(.*).medium.com/] })
```

而现在您要使用的图像前缀 :

```tsx
import NextImage from 'next/image'

export function SomeComponent() {
  const actualImageUrl = 'https://cdn-images-1.medium.com/max/1024/1*xYoAR2XRmoCmC9SONuTb-Q.png'

  return <NextImage src={`/api/imageProxy?imageUrl=${actualImageUrl}`} width={700} height={300} />
}
```

## 捐款

贡献使得开放源代码社区成为了如此惊人的学习,激励和创造的地方. 你所做的任何贡献 **非常感谢**。 。 。 .

-   如果您有关于添加或删除项目的建议,请随意 [打开一个问题](https://github.com/Blazity/next-saas-starter/issues/new) ,或编辑后直接创建拉动请求 _读取_ 备有必要修改的文件.
-   为每个建议创建单个公关.

### 创建拉请求

1.  项目叉
2.  创建您的特性分支( E)`git checkout -b feature/AmazingFeature`(中文(简体) )
3.  提交更改( E)`git commit -m 'Add some AmazingFeature'`(中文(简体) )
4.  推动到该处`git push origin feature/AmazingFeature`(中文(简体) )
5.  打开拉请求

## 常见问题

### @blazity/next-image-proxy 是什么？

下一个\.js 图像代理 。 使得在下/图像组件中使用动态域成为可能\.

### 如何安装 @blazity/next-image-proxy？

在项目目录运行 npm install @blazity/next-image-proxy，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：next（\>=9\.0\.0）、react（\>=16\.0\.0）、react-dom（\>=16\.0\.0）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @blazity/next-image-proxy 支持 TypeScript 吗？

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

### @blazity/next-image-proxy 支持 ESM 还是 CommonJS？

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

### @blazity/next-image-proxy 可以商用吗？

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

### @blazity/next-image-proxy 的下载量有多少？

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

### @blazity/next-image-proxy 还在维护吗？

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

