EOS是一種分布式區塊鏈平臺,普元是EOS網絡上一個非常強大的智能合約,它支持將一筆資金分配給多個賬戶。在執行這個操作時,普元合約將返回一個JSON格式的數據,從而讓任何人都可以輕松地獲取普元合約的結果。
// JSON例子 { "account": "eosio.token", "balance": "53.5062 EOS", "timestamp": 1564383843 }
上述JSON數據描述了一個eosio.token的賬戶,其余額為53.5062 EOS,該數據的時間戳為1564383843。
在普元合約中,可以通過以下步驟返回JSON格式的數據:
- 定義一個包含所需信息的C++結構體
- 使用結構體填充數據
- 將結構體轉換為JSON對象,并返回
// C++例子 #include#include #include #include using namespace eosio; class mycontract : public eosio::contract { public: using contract::contract; // 定義結構體 struct mystruct { std::string account; asset balance; uint64_t timestamp; }; // 普元函數 [[eosio::action]] void myaction(std::string account_name, std::string amount) { // 填充結構體 auto result = mystruct { .account = account_name, .balance = asset(amount, symbol("EOS", 4)), .timestamp = now() }; // 將結構體轉換為JSON對象 auto json_data = json::to_string(result); // 返回JSON對象 eosio::print(json_data); } }; EOSIO_DISPATCH(mycontract, (myaction))
上述代碼中,定義了一個名為mycontract的合約,并在其中定義了一個名為myaction的普元函數。函數接收兩個字符串參數,其中一個代表賬戶名,另一個代表轉賬金額。在函數中,使用mystruct結構體填充數據,并將其轉換為JSON對象,并使用eosio::print函數返回JSON結果。
上一篇vue dev host
下一篇vue發布api轉發