收藏本站 网站导航 开放平台 Saturday, April 20, 2024 星期六
  • 微信

如何使用Zapier和IPFS创建无代码的NFT文件工具

来源 中金网 05-11 22:24
摘要: 黑客松的奇妙之处在于人们可以想出各式各样的应用,创意观点自由地交流碰撞,会让人无

  黑客松的奇妙之处在于人们可以想出各式各样的应用,创意观点自由地交流碰撞,会让人无意中发现从未想到过的点子。我们在ETHGlobal NFT黑客松做评委时就是这种情况。有一个原来叫MyMuzzay如今叫CocoNFT的APP,通过将Instagram上的帖子拉过来铸造成NFT且同时把资产和元数据存储于IPFS上,给我们带来了惊喜。他们就是利用尽可能多的无代码工具包括Zapier,才能做到这一点。

  Brody Berson和Reid Robinson都在Zapier工作,他们能够使用Zapier开发者平台建立可连接至Pinata并允许在IPFS上轻松存储文件的定制应用程序。对于不熟悉Zapier的人来说,这是一个可以连接多个应用程序和自动化任务的平台。例如,可以通过连接Intercom和Google Sheets来更新支持聊天中的电子表格。Zapier如今已能够支持平台上3000多个应用程序,这意味着其自动化能力几乎无止境。

  以上,Brody和Reid力证了其可行性并打下坚实基础,于是我们完成了Pinata Zapier应用程序并将其公开。从今天开始,你可以通过Zapier将成千上万的应用程序连接到Pinata,且不需要编码。在此背景下,请随我们一起深入了解此教程。

  1、应用

  我们正在打造一款可以使用Pinata自动将你新购买的NFT备份至IPFS的简单应用程序(无代码或少量使用代码),这很重要且最近成为了一个热议话题。我们曾经讨论过NFT相关的数据责任概念,这个工具可以让你完全控制你全部的NFT相关资产。

  不过,这个应用程序不是真正的应用程序,至少不是说会有一个可以访问的URL并亲眼看到的应用程序。相反,可以把它看作是个人Pinata机器人,它努力的寻找你拥有的所有NFT并将其内容托管在IPFS上。这个应用程序其实是一个Zap。

  在本教程中,我们将使用Etherscan API来寻找给定地址所拥有的NFT。然而,你可以根据自己的意愿来扩展此工具。

  在我们开始前,你需要如下准备:

  1.Pinata的免费账户

  2.Zapier的免费账户

  3.Etherscan的免费账户

  你的钱包里还需备有一些NFT,如果你目前没有任何NFT,你可以玩玩Ethereum测试网。买一些假的NFT,然后用Etherscan testnet API换掉Etherscan API。我将在接下来的教程中指出需要改变的地方。

  2、使用指南

  请登录你的Zapier、Pinata和Etherscan账户,你需要创建一个用于Zapier的Pinata API令牌,所以我们先做这一步。在左侧导航中的“开发人员”部分点击API私钥以创建一个新的API私钥。完成这一步后,你将能控制私钥。对于访问权限,足够即可,无需更多。这是我为我的私钥选择的访问权限:

  我们需要Zapier能够代表我们托管文件和JSON,还需要其能够列出它所托管的文件(尽管我们在本教程中不会使用此功能)。

  当你创建私钥时,一个模式将显示API密钥、API Secret 和JWT。你会需要用到JWT,因此请复制并将其存储到安全的地方。

  接下来,你需要在Etherscan上创建一个API私钥,你可以在此创建。

  如果你使用testnet,请使用Rinkeby testnet,并在此设置你的Etherscan账户和API私钥,你也可以在OpenSea这里找到testnet NFT。你还需要获得一些testnet Ethereum代币,建议你去谷歌上搜索获得途径。获得代币的方法非常多,本教程不再赘述。

  当你获得了Etherscan API私钥,请将此密钥与Pinata JWT一起保存。

  现在,在Zapier中点击菜单转到“My Zaps”处,你会看到一个按钮,点击此按钮可创建一个新的Zap。

  点击“Make a Zap”会被提示要选择一个你将用来作为触发器的APP。现在,我们准备使用Etherscan作为我们的触发器,我们希望任何新NFT都能触发Zap。Zap本身会找到与新NFT相关的元数据,并将其内容托管在Pinata上。

  我们将用于触发事件的APP会需要一小部分代码,因为到目前为止,没有NFT或者Ethereum平台在Zapier上有APP。但不要担心,我会提供此处需要的代码片段。搜索Zapier代码并选择运行Javascript作为触发器。

  当点击继续时,你就可以粘贴需要运行的代码。请粘贴以下内容:

  const yourAddress = “YOUR ETHEREUM ADDRESS”

  const etherscanApiKey = “YOUR ETHERSCAN API KEY”

  const res = await fetch(`https://api.etherscan.io/api?module=account&action=tokennfttx&address=${yourAddress}&startblock=0&endblock=999999999&sort=asc&apikey=${etherscanApiKey}`);

  const body = await res.json();

  const results = body.result;

  let mainResult = {}

  if(results && results.length > 0) {

  const lastTx = results[0];

  if(lastTx) {

  const openSeaRes = await fetch(`https://api.opensea.io/api/v1/metadata/${lastTx.contractAddress}/${lastTx.tokenID}`)

  const openSeaBody = await openSeaRes.json()

  mainResult = openSeaBody

  }

  }

  return {id: 1, results: mainResult};

  如果你使用的是testnet,用 https://rinkeby-api.opensea.io/api/v1/替换OpenSea api URL,然后像主网的URL那样附加其余的URL。

  在这段代码中,我们使用Etherscan的token transfer API来检查Ethereum钱包里的NFT交易。这段代码只会抓取最近的交易,所以我们的想法是它将在你睡觉时运行,当发现一个新的交易时,元数据将从OpenSea中获取。我们将在Zap的下一步中使用到这些元数据。

  如果你的钱包中有任何NFT,你可以测试触发器,且会获得如下测试结果:

  接下来的步骤是我们告诉Zapier如何处理在触发器中发现的信息。在你的操作中需要搜索一个APP,你可以搜索Pinata。当找到Pinata时,会被提示验证账户。此处你就需要粘贴JWT过来,完成此操作后,Zapier就可以访问Pinata账户。

  现在你可以进入设置行动步骤。这个步骤非常简单,仅需提供文件的URL和文件名,这是来自触发步骤的变量。我的设置界面如下:

  现在,测试这个步骤,你应该可以看到和NFT相关的文件已被托管在Pinata账户上。是不是还有所怀疑?那就返回你的账户并检查你的管理器看看吧!

  如何打开Zap?你需要先在左上角为它命名,然后将切换开关拨到开就可以啦。你现在就相当于拥有了一个机器人,它会确保你所有与NFT相关的资产被托管在IPFS上且完全属于你。

NFT
免责声明:中金网发布此信息目的在于传播更多信息,与本网站立场无关。中金网不保证该信息的准确性、真实性、完整性、有效性等。相关信息并未经过本网站证实,不构成任何投资建议,据此操作,风险自担。
相关新闻 更多

天眼深度丨为什么越来越多的年轻人拥抱加密货币而非房地产?

在数字化浪潮席卷全球的背景下,美国年轻一代的投资观念正经历着前所未有的转变。

04-10 15:28

天眼深度丨以太坊被归类为证券会扰乱Web3创新吗?

近日,全球金融与投资领域的目光纷纷聚焦于以太坊可能面临的证券归类问题。

04-09 16:18

天眼深度丨为何说Solana是加密货币界的苹果?

在加密货币市场中,Solana已经成为备受瞩目的一股力量。

03-21 14:55