在eosio合约中解析json
在合约中常有解析json的需求,此文章介绍使用
nlohmann/json
原版本
https://github.com/nlohmann/json
适配eosio合约后的版本源码地址
https://github.com/bcskill/eosio_json
下载完json.hpp文件后,将代码文件放到合约目录,通常放到项目合约代码同级的common目录
然后在项目合约中直接包含此json.hpp文件
#include "./common/json.hpp"
在使用的合约指名json的命名空间
using json = nlohmann::json;
然后就可以直接解析json字符串了
json memoJson = json::parse(memo);
// 为了业务的判定,合约账户内不允许非限定交易,如有特殊需求再做变更
eosio::check(memoJson.count("transfer_type") == 1, get_assert_msg(ASSERT_ERROR_CODE::MISSING_PARAMETERS, "Missing parameters"));
transfer_type = memoJson["transfer_type"].get<uint8_t>();
当前页面是本站的「Google AMP」版。查看和发表评论请点击:完整版 »