元宇宙非小号金色财经交流群社区官网

Web应用上传文件至IPFS

浏览:91|时间:2023-07-05 09:16:41
与IPFS最常见的交互方式之一是从客户端应用程序上传图像和视频等文件。然而令人感到惊讶的是,没有简单的教程展示如何完成此操作。

在本教程中,您将使用ipfs-http-client库来实现这个功能。这个教程是在React中实现的,但应该很容易转移到其他JavaScript框架中,比如Vue、Angular或Svelte。

关于IPFS:IPFS是一种去中心化的点对点文件共享协议。有各种类型的IPFS网关可用。有些是免费的,有些则不是。一些网关提供只读访问权限,而另一些网关提供读取和写入访问权限。您还可以运行自己的IPFS网关。因为我们将上传/保存文件,所以需要选择允许我们写入访问的网关。本教程使用的网关是Infura。其他受欢迎的服务是Pinata或Fleek。

入门:如果您已经创建了一个React应用程序,则可以跳过此步骤。

首先,创建一个新的React应用程序并切换到新目录。接下来,使用NPM或Yarn安装ipfs-http-client库。

基本代码:基本功能可以用仅3行代码来概括,但本教程还将构建一个完整的UI来展示它们是如何组合在一起的。下面是使其工作的基本代码:

``` const IPFS = require('ipfs-http-client'); const ipfs = IPFS.create();

async function uploadFile() { const added = await ipfs.add(file); const fileHash = added.cid.toString(); console.log(fileHash); } ```

完整代码:现在让我们看看如何使用上面的代码在应用程序中实现文件上传功能,并实现查看图像的功能。

在您的项目中,打开src/App.js文件并使用以下代码更新它:

``` import React, { useState } from 'react'; import IPFS from 'ipfs-http-client';

function App() { const [file, setFile] = useState(null); const [fileUrl, setFileUrl] = useState('');

const ipfs = IPFS.create();

const onChange = (event) => { setFile(event.target.files[0]); };

const onClick = async () => { const added = await ipfs.add(file); const fileHash = added.cid.toString(); const url = `https://ipfs.io/ipfs/${fileHash}`; setFileUrl(url); };

return (

{fileUrl && ( )}
); }

export default App; ```

接下来,运行应用程序。当应用加载时,您应该会看到一个文件上传按钮。文件成功上传后,您应该会看到它在UI中呈现。

来源:算力中国

IPFS Web WEB应用

  • 区块链技术最早发行的BitSwap协议,IPFS节点如何运用

    区块链技术最早发行的BitSwap协议,IPFS节点如何运用

    2022-01-08 15:22:07

    最开始的数据互换协议当属BitTorrent,这也是大部分区块链技术节点中间完成沟通交流的基本协议,自然IPFS也务必必须能完成p2p的数据互换协议,IPFS在BitTorrent的根基上完成了自身BitSwap协议,该...

  • IPFS和NFT相结合的话会产生什么效果?

    IPFS和NFT相结合的话会产生什么效果?

    2022-02-15 17:58:13

    NFT作为区块链异构经济通证概念的鼻祖,经历了多年的沉寂,20年后终于开始接受众多应用,迄今为止,NFT已经接待了众多互联网科技巨头和文化界,众多布局应用正式启动积极发展区块链加密金融。随着NFT作品的陆续上线和交易,N...

  • IPFS挖矿骗局很多,很多投资者都受到了伤害

    IPFS挖矿骗局很多,很多投资者都受到了伤害

    2022-04-08 15:59:10

    2018年,IPFS该协议风靡矿区,掀起了疯狂的采矿浪潮,各种IPFS矿机到处遍地开花。由于主网上线的一再延迟,挖掘算法已经很久没有公布了。矿机和代币只是期货,不能真正挖掘。模仿和冒充他们项目的门槛很低,市场投资者很难。...

  • Web3将与Web2并行发展 而不是淘汰Web2

    Web3将与Web2并行发展 而不是淘汰Web2

    2022-07-11 17:29:54

    在我们讨论 Web3 时,多数人会马上联想到 NFT、加密资产或 DeFi。由于从 Twitter Crypto 的行动来说,这是事实。但作为一名开发人员,我真真正正有兴趣的并非这三者。实际上,我可能现阶段有 95% 的...

本站分享的区块链、Web3.0元宇宙、NFT、数字藏品最新消息等相关数藏知识快讯NFR资讯新闻,与金色财经非小号巴比特星球前线Btc中国官网无关,本站资讯观点不作为投资依据,市场有风险,投资需谨慎!不提供社区论坛BBS微博微信交流群等相关币圈信息发布!
本站内容来源于互联网,如存在侵权及违规内容投诉邮箱( zztaobao@vip.qq.com )