成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

以太坊智能合約開發(fā):實(shí)現(xiàn)轉(zhuǎn)賬退費(fèi)

XBaron / 2880人閱讀

摘要:在以太坊智能合約開發(fā)時,可能會有以下需求僅接受用戶轉(zhuǎn)入指定價值的,如果用戶轉(zhuǎn)入較少,則直接返回異常,當(dāng)用戶轉(zhuǎn)入較多,則將用戶多轉(zhuǎn)入的退回。之后執(zhí)行合約不會調(diào)用。執(zhí)行合約時,轉(zhuǎn)賬的數(shù)量,以為單位。

在以太坊智能合約開發(fā)時,可能會有以下需求:

僅接受用戶轉(zhuǎn)入指定價值的eth,如果用戶轉(zhuǎn)入eth較少,則直接返回異常,當(dāng)用戶轉(zhuǎn)入eth較多,則將用戶多轉(zhuǎn)入的eth退回。

在這里我們可以借助 fallback function,也就是后備函數(shù)進(jìn)行轉(zhuǎn)入金額的限定,示例如下:

代碼示例
contract Refund {
    
    address owner = 0x0;
  
    uint256 ticket = 1 ether;    // 一個eth
      
    // 合約構(gòu)造函數(shù)
    // 第一次部署合約時,會調(diào)用該方法。
    // 之后執(zhí)行合約不會調(diào)用。
    function Refund() public payable {
        // 將部署合約的地址作為合約擁有者
        owner = msg.sender;
    }
  
    // 后備函數(shù)
    function () public payable {
          require(msg.value >= ticket);
          if (msg.value > ticket) {
               var refundFee = msg.value - ticket;
            msg.sender.transfer(refundFee);
        }
    }
}
代碼解釋

public : 函數(shù)可見性

payable :可支付的函數(shù)修飾符,沒有該修飾符無法接受轉(zhuǎn)賬操作。

msg.value :執(zhí)行合約時,轉(zhuǎn)賬的eth數(shù)量,以wei為單位。

msg.sender : 執(zhí)行合約的地址

.transfer(uint256):給指定地址
進(jìn)行轉(zhuǎn)賬

sendtransfer 的區(qū)別

.transfer(uint256 amount)

發(fā)送給定數(shù)量的wei給指定地址,錯誤時拋出異常

.send(uint256 amount) returns (bool)

發(fā)送給定數(shù)量的wei給指定地址,錯誤時返回false

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/23958.html

相關(guān)文章

  • SegmentFault 技術(shù)周刊 Vol.41 - 深入學(xué)習(xí)區(qū)塊鏈

    摘要:和比特幣協(xié)議有所不同的是,以太坊的設(shè)計十分靈活,極具適應(yīng)性。超級賬本區(qū)塊鏈的商業(yè)應(yīng)用超級賬本超級賬本是基金會下的眾多項目中的一個。證書頒發(fā)機(jī)構(gòu)負(fù)責(zé)簽發(fā)撤 showImg(https://segmentfault.com/img/bV2ge9?w=900&h=385); 從比特幣開始 一個故事告訴你比特幣的原理及運(yùn)作機(jī)制 這篇文章的定位會比較科普,盡量用類比的方法將比特幣的基本原理講出來...

    qianfeng 評論0 收藏0
  • 如何通過以太智能合約來進(jìn)行眾籌(ICO)

    摘要:本文首發(fā)于深入淺出區(qū)塊鏈社區(qū)原文鏈接如何通過以太坊智能合約來進(jìn)行眾籌原文已更新,請讀者前往原文閱讀前面我們有兩遍文章寫了如何發(fā)行代幣,今天我們講一下如何使用代幣來公開募資,即編寫一個募資合約。 本文首發(fā)于深入淺出區(qū)塊鏈社區(qū)原文鏈接:如何通過以太坊智能合約來進(jìn)行眾籌(ICO)原文已更新,請讀者前往原文閱讀 前面我們有兩遍文章寫了如何發(fā)行代幣,今天我們講一下如何使用代幣來公開募資,即編寫一...

    forrest23 評論0 收藏0
  • 以太智能合約開發(fā)第二篇:理解以太相關(guān)概念

    摘要:原文發(fā)表于以太坊智能合約開發(fā)第二篇理解以太坊相關(guān)概念很多人都說比特幣是區(qū)塊鏈,以太坊是區(qū)塊鏈。它是以太坊智能合約的運(yùn)行環(huán)境。是由以太坊節(jié)點(diǎn)提供。以太坊社區(qū)把基于智能合約的應(yīng)用稱為去中心化的應(yīng)用。 原文發(fā)表于:以太坊智能合約開發(fā)第二篇:理解以太坊相關(guān)概念 很多人都說比特幣是區(qū)塊鏈1.0,以太坊是區(qū)塊鏈2.0。在以太坊平臺上,可以開發(fā)各種各樣的去中心化應(yīng)用,這些應(yīng)用構(gòu)成了以太坊的整個生態(tài)...

    yibinnn 評論0 收藏0
  • 以太合約的安全性弱點(diǎn),你都繞開了嗎?

    摘要:很多以太坊的智能合約控制著有實(shí)際價值的數(shù)字資產(chǎn)。這幾期為大家?guī)硪黄陮σ蕴缓霞s攻擊調(diào)研的文獻(xiàn),來幫助大家避免以太坊智能合約設(shè)計中的一些可能導(dǎo)致安全性問題的弱點(diǎn)。攻擊攻擊是以太坊歷史上最著名的攻擊,盜走了價值萬美元的以太幣。 showImg(https://segmentfault.com/img/bVbnRDB?w=1080&h=460); 很多以太坊的智能合約控制著有實(shí)際價值的數(shù)...

    weij 評論0 收藏0
  • 以太合約的安全性弱點(diǎn),你都繞開了嗎?

    摘要:很多以太坊的智能合約控制著有實(shí)際價值的數(shù)字資產(chǎn)。這幾期為大家?guī)硪黄陮σ蕴缓霞s攻擊調(diào)研的文獻(xiàn),來幫助大家避免以太坊智能合約設(shè)計中的一些可能導(dǎo)致安全性問題的弱點(diǎn)。攻擊攻擊是以太坊歷史上最著名的攻擊,盜走了價值萬美元的以太幣。 showImg(https://segmentfault.com/img/bVbnRDB?w=1080&h=460); 很多以太坊的智能合約控制著有實(shí)際價值的數(shù)...

    BakerJ 評論0 收藏0

發(fā)表評論

0條評論

閱讀需要支付1元查看
<