IPFS Gateway Redirector with Fallback and Retry 项目
简称 IPFS-FIX
项目地址 https://github.com/BlueSkyXN/WorkerJS_CloudFlare_ImageBed/blob/main/UserScript/ipfs-fix.js
基于预设的IPFS网关列表,通过正则表达式匹配识别进行多后备源实现IPFS客户端高可用
定义了多个 IPFS 网关的列表,按优先级排列。这些网关用于重定向 IPFS 链接,以便提高文件访问的成功率。
目前只面向图片实现高可用来避免错误,图片基于IMG标签
并发请求 我预设为每组4个并发
- 定义了
concurrentRequests
变量,控制每次并发请求的网关数量,默认设置为 4 个。- 使用
fetchFromGateway
函数创建异步请求,该函数会尝试从给定的网关加载图片文件。成功时,解析(resolve
)Promise,失败时则拒绝(reject
)Promise。tryIpfsGatewaysSequentially
函数逐组发起并发请求,并通过Promise.race
方法找到第一个成功的网关。失败时,它会自动从下一个组中再次尝试,直到找到可用的网关。- 如果所有初步的尝试都失败,脚本会再一次尝试所有网关。这增加了访问文件的成功机会。
- 如果所有网关最终都无法加载图片,则会恢复原始 URL。
预设网关列表
- https://gateway.pinata.cloud/ipfs/
- https://eth.sucks/ipfs/
- https://hardbin.com/ipfs/
- https://gateway.ipfsscan.io/ipfs/
- https://i0.img2ipfs.com/ipfs/
- https://ipfs.raribleuserdata.com/ipfs/
- https://ipfs.crossbell.io/ipfs/
- https://ipfs.basedfellas.io/ipfs/
- https://gateway.v2ex.pro/ipfs/
- https://ipfs.io/ipfs/
- https://ipfs.interface.social/ipfs/
- https://ipfs.4everland.io/ipfs/
- https://ipfs.le7el.com/ipfs/
- https://gw-seattle.crustcloud.io/ipfs/
- https://ipfs.decentralized-content.com/ipfs/
- https://4everland.io/ipfs/
- https://c4rex.co/ipfs/
- https://ipfs.omakasea.com/ipfs/
- https://ipfs.joaoleitao.org/ipfs/
- https://proofs.filestar.info/ipfs/
- https://ipfs.eth.aragon.network/ipfs/
- https://ipfs.supremelegend.io/ipfs/
- https://pz-acyuix.meson.network/ipfs/
- https://trustless-gateway.link/ipfs/
- https://ipfs.cyou/ipfs/
- https://gw.ipfs-lens.dev/ipfs/
- https://ipfs.runfission.com/ipfs/
- https://nftstorage.link/ipfs/
- https://w3s.link/ipfs/
- https://dlunar.net/ipfs/
- https://storry.tv/ipfs/
- https://flk-ipfs.xyz/ipfs/
https://gateway.pinata.cloud/ipfs/
https://eth.sucks/ipfs/
https://hardbin.com/ipfs/
https://gateway.ipfsscan.io/ipfs/
https://i0.img2ipfs.com/ipfs/
https://ipfs.raribleuserdata.com/ipfs/
https://ipfs.crossbell.io/ipfs/
https://ipfs.basedfellas.io/ipfs/
https://gateway.v2ex.pro/ipfs/
https://ipfs.io/ipfs/
https://ipfs.interface.social/ipfs/
https://ipfs.4everland.io/ipfs/
https://ipfs.le7el.com/ipfs/
https://gw-seattle.crustcloud.io/ipfs/
https://ipfs.decentralized-content.com/ipfs/
https://4everland.io/ipfs/
https://c4rex.co/ipfs/
https://ipfs.omakasea.com/ipfs/
https://ipfs.joaoleitao.org/ipfs/
https://proofs.filestar.info/ipfs/
https://ipfs.eth.aragon.network/ipfs/
https://ipfs.supremelegend.io/ipfs/
https://pz-acyuix.meson.network/ipfs/
https://trustless-gateway.link/ipfs/
https://ipfs.cyou/ipfs/
https://gw.ipfs-lens.dev/ipfs/
https://ipfs.runfission.com/ipfs/
https://nftstorage.link/ipfs/
https://w3s.link/ipfs/
https://dlunar.net/ipfs/
https://storry.tv/ipfs/
https://flk-ipfs.xyz/ipfs/
Comments NOTHING