6个以太坊DApps的盈利途径 (Pt.2)

Loom Network Chinese
Loom Network Chinese
6 min readMar 10, 2018

原文作者:Georgios Konstantopoulos

原文链接:https://medium.com/loom-network/6-ways-to-monetize-your-ethereum-dapps-part-2-857a2820dec4

在这个文章系列的第一部分中,我们介绍了将你的以太坊DApps货币化的理论方法。 在这一部分,我们将会通过看一些代码示例,来展示如何在Solidity中实际实现它们。

提取资金

首先,你需要有一个能够允许将资金提取到所有者的地址的函数。 这很简单:

当合约调用这个函数时,此函数会将合约的余额转移到owner的地址(使用了非常流行的onlyOwner修饰符模式)。如果你不熟悉如何运用上述关键词,那么我建议你先去完成我们的cryptozombies课程,然后再继续阅读。

免责声明:以下所有示例都经过了简化,以说明如何实现所讨论的函数。 因为我们对商业逻辑做出了假设,所以在创建一套智能合约时我们没有采取任何严格的安全措施。 在推出产品之前,请对你的代码进行全面的安全审核!

1. 做Crowdsale/发布代币

以太坊官方网页对此进行了描述。 为了创建安全的crowdsale,建议使用Open Zeppelin创建的审核合约

你可以参照这个指南这个视频

2. 高级功能/跳过过程

完整代码请看:https://ethfiddle.com/O3_2o-oqaZ

在这个例子中,用户可以支付1 ether以绕过winCount的升级要求。 然后,所有者会调用之前讨论的withdraw函数,提取资金。

请注意,以太的价格可能在未来急剧上涨(或下跌),这将改变你的高级功能的成本。 因此,在许多情况下,合理的做法是添加一个onlyOwner函数,使你可以在将来更改成本,否则你的应用程序可能会变得非常昂贵。 这也同样适用于后面所有的示例。

3. 收取一定比例的市场交易费用

在这个(非常简化)的例子中,当有人想要购买一个僵尸时,10%的价格会到你的钱包,其余的则被转移到僵尸的所有者手里。

完整合约请看:https://ethfiddle.com/MuApSyO3jx

为了节省一些gas成本,你可以跳过这个函数的第一行,而以太则会被留在合约的余额里。 通过使用我们之前描述的withdraw函数,你可以在稍后的时间里提取合约中所有的以太。

4. 订阅/会员

这里我们将会看一下实现订阅/会员商业模型的例子:

  1. 终身
  2. 基于时间
  3. 基于使用量

我们将创建一个合约,其中一些函数只能由被标记为符合条件的个人才能调用。

终身会员

这是一个简单的例子:创建一个布尔映射、一个检查布尔是否为真值的修饰符、以及一个允许用户付费成为会员的函数。

完整合约请看:https://ethfiddle.com/LgzLNtIIVF

另外,与其使用一个布尔来判断是否为会员,我们可以用一个unit8和不同的会员等级来给予更多的功能访问权:0级为免费用户、1级为银卡会员、2级为金卡会员,以此类推。然后onlySilver()可以检查会员等级是否>=1

简单吧?我们继续。

基于时间的会员/订阅

这里,我们的商业模式将假设订阅价格为0.005 以太/天

完整合约请看:https://ethfiddle.com/Dx1jQlgazK

在这种情况下,当一个用户调用renewSubscription 函数时,如有必要,subscriptionExpiration 将被初始化为now ,然后增值用户支付的天数。onlyMember 修饰符可以用来检查目前的时间是否已经过期。

基于使用量的会员/付费使用

在这里的商业模式包括了用户提前购买函数的调用,类似于你可以以固定的价格购买API调用。

在这个例子中,用户每以太可以购买1000次调用。 每次用户调用具有onlyIfEnoughCalls修饰符的函数时,在检查它们符合该调用的条件之后,availableCalls变量将递减。

完整合约请看:https://ethfiddle.com/rO0xD9nIl6

以上所有情况中,你只需将相应的only{property}修饰符添加到任何函数中,然后该函数就只能由有权访问它的用户调用。

结论

在这个由两部分组成的系列文章中,我们讨论并实现了一些商业模式,你可以在目标是货币化或盈利的情况下应用于你的Dapp。

我想强调的是,这篇文章中给出的所有代码都是每个模型的一个非常基本的实现,你应该根据自己的具体需求进行调整。

下一步

对DApp开发感兴趣? 来看看我们完全免费的课程,了解如何开始吧

Loom Network 是扩展功能性 dapp 的多链互操作平台 — — 已正式投产、完成审计并全面测试。

你的 dapp 只需部署到 Loom 的 Basechain,便可触及所有主要区块链的最大用户群。

想了解更多信息? 请从这里开始

想锁定你的 LOOM 代币并帮助维护 Basechain 的安全?看看这里

想保持关注?请注册我们的邮件列表

--

--

Loom Network Chinese
Loom Network Chinese

中文社区 @ Loom Network — — 面向医疗服务提供者的分布式企业平台 https://loomx.io