HTT:通过 Web 应用向 IPFS 上传文件

译文出自:登链翻译计划

译者:翻译小组

校对:Tiny熊

与IPFS的交互最常见的方式是从客户端应用程序上传图片和视频等文件,但我发现,好像没有很直接明了的教程。

在本教程中,你将通过使用ipfs-http-client,以尽可能少的代码来学习。这里的想法是在React中实现的,但应该可以相当容易地转移到任何其他JavaScript框架中,如Vue、Angular或Svelte。

关于IPFS

IPFS是一个去中心化的、点对点的文件共享协议。

有各种类型的IPFS网关可用,有些是免费的,有些则不是。有些提供只读访问,有些则提供读写访问。

你也可以运行你自己的IPFS网关。

Gate.io 上线ASS交易 24H最高涨幅达1081.25%:据Gate.io芝麻开门行情显示,截至今日14:55,Gate.io 上线ASS交易,24H最高涨幅达1081.25%,最高价格0.0000000378美元,当前价格为0.0000000244美元,当前涨幅为662.5%,24H现货交易量为1394.07万美元。近期行情波动较大,请注意控制风险。[2021/5/19 22:19:31]

因为我们将上传/保存文件,需要选择一个允许我们写访问的网关,这里使用的网关是Infura,其他流行的服务网管有Pinata或Fleek。

关于如何用Pinata将文件pin在IPFS上的例子,请查看这个代码库。

开始工作

如果你已经创建了一个React应用程序,则可以跳过这个步骤。

Gate.io发布iOS TestFlight2.4.7版本:据官网公告,Gate.io已发布iOS TestFlight2.4.7版本,APP内完善“动态”功能,可关注他人以及查看粉丝,并新增“广场”、“热门”、“关注列表”三项内容分类页;新增“订阅”功能,激励用户发布原创优质内容,吸引粉丝付费订阅;直播间新增主播连麦功能,可与主播面对面畅聊,消息即时同步不卡顿;合约USDT结算合约位置调整,启动进入合约显示USDT合约等功能。详情见原文链接。[2020/5/19]

首先,创建一个新的React应用程序,并进入新目录。

npxcreate-react-appipfs-examplecdipfs-example

接下来,使用NPM或Yarn安装ipfs-http-client库。

Gate.io杠杆ETF速报:BSV3S以34.48%涨幅领涨ETF:据Gate.io杠杆ETF官方数据,截至今日18:00,BSV3S以34.48%涨幅领涨ETF,BCH3S(+29.08%)、XTZ3S(+26.42%)、EOS3S(+23.09%)、ETH3S(+21.05%)、LTC3S(+20.67%)涨幅紧随其后。BSV3S 24小时成交量达205.86万美元。Gate.io杠杆ETF产品在永续合约市场对冲管理。以上观点不构成投资建议,请注意风险。当前市场多空形势参考下图。[2020/4/10]

npminstallipfs-http-client

上传基本代码

基本功能只需3行代码就能概括,但我也将建立一个完整的用户界面,以显示它是如何组合在一起的。

可工作的基本代码:

/*importtheipfs-http-clientlibrary*/import{create}from'ipfs-http-client';/*创建一个IPFS客户端实例*/constclient=ipfsHttpClient('https://ipfs

exportdefaultApp

接下来,运行该应用程序。

npmstart

当应用程序加载时,你应该看到一个文件上传按钮。

一旦一个文件被成功上传,你应该看到它在用户界面上呈现出来。

你看,超简单的。

本翻译由CellETF赞助支持。

来源:https://dev.to/dabit3/uploading-files-to-ipfs-from-a-web-application-50a

参考资料

登链翻译计划:https://github.com/lbc-team/Pioneer

翻译小组:https://learnblockchain.cn/people/412

Tiny熊:https://learnblockchain.cn/people/15

IPFS:https://ipfs.io/#how

ipfs-http-client:https://github.com/ipfs/js-ipfs/tree/master/packages/ipfs-http-client#readme

IPFS:https://learnblockchain.cn/2018/12/25/use-ipfs

IPFS网关:https://docs.ipfs.io/concepts/ipfs-gateway/#overview

你自己的IPFS网关:https://docs.ipfs.io/concepts/ipfs-gateway/#gateway-providers

Infura:https://infura.io/docs/ipfs

Pinata:https://pinata.cloud/

Fleek:https://fleek.co/

这个代码库:https://github.com/dabit3/ipfs-pinata-example

CellETF:https://celletf.io/?utm_souce=learnblockchain

免责声明:作为区块链信息平台,本站所发布文章仅代表作者个人观点,与链闻ChainNews立场无关。文章内的信息、意见等均仅供参考,并非作为或被视为实际投资建议。

本文来源于非小号媒体平台:

登链社区

现已在非小号资讯平台发布105篇作品,

非小号开放平台欢迎币圈作者入驻

入驻指南:

/apply_guide/

本文网址:

/news/10325617.html

免责声明:

1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险

2.本文版权归属原作所有,仅代表作者本人观点,不代表非小号的观点或立场

上一篇:

每周编辑精选WeeklyEditors'Picks

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

链链资讯

[0:15ms0-4:188ms