@blazity/next-image-proxy

中文文档
1.0.2发布于 2022/03/04MITTypeScriptESM + CJS近 30 天下载 6095

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

中文使用文档
文档目录5 节
  1. 动机
  2. * 安装
  3. 使用时间
  4. 捐款
  5. 创建拉请求

Next.js 图像代理

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


npm version badge license badge

动机

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

如果你想了解关于Next.js在盒子外支持它的讨论,请参见此 讨论情况 还有这个 拉请求

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

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

* 安装

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

# or

$ yarn add @blazity/next-image-proxy

使用时间

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

// pages/api/imageProxy.ts

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

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

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

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} />
}

捐款

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

  • 如果您有关于添加或删除项目的建议,请随意 打开一个问题 ,或编辑后直接创建拉动请求 读取 备有必要修改的文件.
  • 为每个建议创建单个公关.

创建拉请求

  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 共发布 3 个版本,首次发布于 2022/03/04;过去 12 个月发布了 0 个版本。

版本发布日期距今
1.0.2latest2022/03/044 年前
1.0.12022/03/044 年前
1.0.02022/03/044 年前

关于 @blazity/next-image-proxy 的常见问题

@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 和提交记录判断。