我应该为从NEAR协议中进行的每次读取付费吗?
如何查看NEAR协议智能合约中存储的值? (例如,赌注池费用)
查看和更改方法有什么区别?
答案 0 :(得分:2)
我应该为从NEAR协议中进行的每次读取付费吗?
TL; DR:不,您不应该。
在NEAR协议中,存在与智能合约进行交互的方法:
query(call_function)
JSON RPC method,它将在只读环境中在RPC节点本身上执行指定的方法,并且该调用将永远不会通过区块链记录/验证(就近api-js而言)这些是“查看方法”)您只能通过第一种方法来更改状态和链式操作(例如,跨合同呼叫,令牌转移或访问密钥添加/删除),因为区块链希望用户负担执行成本,因此用户应签署自己的协议。交易,他们将收取执行费用。
有时候,您不需要更改状态,相反,您只想读取存储在链上的值,并且支付的费用不是最优的(尽管如果您需要证明已完成操作,则可能仍然是理想的)。在这种情况下,您将首选第二种方法。通过JSON RPC调用方法是免费的,并且在合同执行期间提供了一个有限的上下文,但是在某些情况下(例如,当您要检查什么是抵押池费用或谁是合同的所有者时,等)。