The-Dao
在 DAO 挑戰的藝術中,我無法理解“批准”的使用。
不應該是這樣,一旦我將乙太幣發送到任何 DAO,我就會立即收到代幣嗎?那麼,approve 在這裡有什麼用呢?
假設我擁有賬戶 A 的密鑰。而你擁有賬戶 B 的密鑰。
我在賬戶 A 中有 100 個代幣,我想把它轉給你。
我可以
transfer(...)
從賬戶 A 執行到 B。或者我可以
approve(...)
將 100 個代幣從 A 轉移到 B。您可以稍後呼叫
transferFrom(...)
將最多 100 個令牌從 A 轉移到 B。請參閱硬分叉後如何使用提款合約將我的 The DAO 代幣轉換為乙太幣中的“提款流程說明”部分?有關該功能的工作範例
approve(...)
。
當一個人將乙太幣發送到一個 DAO(在其創建期間)時,一個人將獲得 DAO 代幣。發送乙太幣的那個賬戶(並且只有那個賬戶)可以稍後將這些代幣“轉移”到另一個賬戶。但是,如果您希望允許其他人轉移您的代幣,您(原始賬戶持有人)必須首先“批准”該其他賬戶。然後另一個帳戶將使用“transferFrom”。
兩個注意事項:
(1) 如果您在創建期(加上寬限期)之後將乙太幣發送給 DAO,DAO 將簡單地保留您的乙太幣,您將不會獲得任何 DAO 代幣。“The DAO”的創建期早已過去。
(2)我見過的’approve’和’transferFrom’使用頻率最高的是來自kraken等交易所。當您在 kraken 上出售代幣時,他們首先會呼叫“approve”讓您的帳戶批准自己,然後他們會呼叫“transferFrom”來完成轉賬。