:2026-04-05 1:24 点击:1
以太坊作为全球领先的智能合约平台,其生态系统日益庞大,以太坊主网本身并不适合存储大量数据,因为存储成本高昂且会影响网络性能,为了解决这个问题,以太坊社区开发了 Swarm(也常被称为 Bzz),一个去中心化的存储和内容分发服务,旨在为以太坊提供强大的数据层,本教程将带你了解 Swarm 的基本概念,并指导你如何开始使用它。
Swarm 是一个由以太坊基金会主导开发的开源项目,它构建一个分布式的存储、带宽和计算系统,它的目标是:
在开始使用 Swarm 之前,了解几个核心概念非常重要:
index.html,它告诉 Swarm 客户端哪个文件是默认的入口点,以及如何组织多个文件,清单文件本身也是一个 JSON 文件。enr 地址,即 Ethereum Node Record),支付后,你会收到一个收据,证明你已经为数据付费并可以开始分发。swarm-cli 或 swarm-uploader:与 Swarm 网络交互的命令行工具或库,用于上传、下载和管理数据。最常用的 Swarm 客户端是基于 Go 语言开发的 swarm,以下是安装和启动基本 Swarm 节点的步骤:
安装 Go 环境 (如果尚未安装) Swarm 是 Go 程序,需要先安装 Go,你可以从 Go 官方网站 下载并安装适合你操作系统的版本。
安装 Swarm
你可以通过 go get 命令来安装 Swarm:
go get github.com/ethersphere/bee
安装完成后,bee 可执行文件通常会位于你的 Go 安装目录的 bin 文件夹下。
初始化并启动 Swarm 节点 打开终端或命令行工具,执行以下命令初始化节点:
bee init --configpath /path/to/your/config/dir
这会在你指定的目录下生成配置文件 config.yaml。
然后启动节点:
bee start --configpath /path/to/your/config/dir
首次启动时,节点会下载一些必要的数据,并尝试连接到其他 Swarm 节点加入网络,启动成功后,你的节点就成了 Swarm 网络中的一个存储节点。
检查节点状态 你可以通过以下命令查看节点是否正常运行以及连接情况:
bee debug info
安装 Swarm CLI 工具
为了方便上传和下载文件,我们可以使用 swarm-cli,你可以从其 GitHub 仓库 下载或按照说明安装。
上传文件
假设你有一个名为 index.html 的文件,想要上传到 Swarm:
swarm-cli up index.html
上传成功后,你会得到一个文件的哈希地址(以 0x 开头,后面跟着 64 个字符),这就是你在 Swarm 上访问这个文件的唯一标识。
下载文件 如果你有文件的哈希地址,可以使用以下命令下载:
swarm-cli down <文件哈希地址> -o output.html
这会将文件下载到当前目录,并命名为 output.html。
上传目录
Swarm 也支持上传整个目录。swarm-cli 会自动为目录生成一个清单文件(manifest)。
swarm-cli up my_directory/
同样,你会得到一个指向该目录根目录清单文件的哈希地址。
通过 HTTP 网关访问 Swarm
Swarm 提供了公共的 HTTP 网关,你可以通过浏览器直接访问 Swarm 上的内容,格式为:
https://swarm-gateways.net/bzz/<文件哈希地址>
或者使用其他网关,如 
利用 Swarm,你可以轻松创建一个简单的去中心化网站:
index.html 文件,以及可能需要的 CSS 和 JavaScript 文件。index.html 是你上传的根目录或指定为入口点。index.html 或清单文件的哈希地址。优势:
挑战:
Swarm 作为以太坊生态系统的重要组成部分,为去中心化应用提供了不可或缺的存储解决方案,通过本教程,你应该对 Swarm 有了初步的了解,并能够尝试上传和下载文件,甚至创建一个简单的去中心化网站。
随着以太坊 2.0 的发展以及去中心化 Web(Web3)概念的普及,Swarm 有望在数据存储和内容分发领域扮演更加重要的角色,我们可以期待更友好的用户界面、更完善的工具链以及更广泛的实际应用场景,如果你对构建真正去中心化的应用感兴趣,Swarm 绝对是一个值得深入学习和探索的技术。
希望这篇教程对你有帮助!如果你在学习过程中遇到问题,可以查阅 Swarm 的 官方文档 或加入社区寻求支持。
本文由用户投稿上传,若侵权请提供版权资料并联系删除!