Javascript
Dapp SDK - 硬編碼 ABI 與動態 ABI
我正在開發一個 Javascript SDK 以允許將外部服務與我們的 Dapp 集成。SDK 呼叫智能合約的方法,因此需要知道合約地址和 ABI。
有些合約是可升級的,因此它們的地址和 ABI 將來可能會發生變化。
最好的解決方案是什麼?1) 在 SDK 中硬編碼地址和 ABI(在 json 文件中),並在每次更新合約時發布新版本的 SDK 2) 讓 SDK 從伺服器獲取地址和 ABI(這需要非同步初始化開發工具包)
有點取決於這些外部服務如何與你的 DAPP 互動,它們只是使用區塊鏈嗎?如果是這樣,為了保護使用者的隱私,我會說將地址和 ABI 捆綁在 SDK 中。作為一個專注於隱私的開發者,我會喜歡你的選擇。
如果他們確實查詢了您的集中式伺服器,並且該伺服器必須在那裡,那麼讓 SDK 從那裡獲取它們是有意義的。