eos智能合約與主進程交互web
1.啓動wasmapi
參考eos智能合約執行流程.mdapp
2.智能合約調用主進程apiui
如何實現wasm代碼與eos宿主交互還須要摸索!spa
大體:在wasm_interface.cpp文件中,經過以下宏來實現wasm與宿主程序的api橋接接口
REGISTER_INTRINSICS(action_api,進程
(read_action_data, int(int, int))(action_data_size, int())(current_receiver, int64_t()));ip
3.總體流程ci
REGISTER_INTRINSICS(authorization_api,get
(require_recipient, void(int64_t))(require_authorization, void(int64_t), "require_auth", void (authorization_api::*)(const account_name &))(require_authorization, void(int64_t, int64_t), "require_auth2", void (authorization_api::*)(const account_name &, const permission_name &permission))(has_authorization, int(int64_t), "has_auth", bool (authorization_api::*)(const account_name &) const)(is_account, int(int64_t)));
推測 智能合約代碼 apply_social_vote() -> require_recipient() // 經過如上代碼注入 -> authorization_api::require_recipient() -> apply_context::require_recipient()