nearprotocol - 如何从断言语句中显示错误消息,以便前端可以在 AssemblyScript 中使用它们?
问题描述
寻找一种方法来捕获发生的错误(在 AssemblyScript 中)以在前端向用户显示正确的错误信息/下一步。两种情况 - 类似的问题:
当断言语句触发并停止合同(恐慌)时 - 我可以让它在控制台中显示一个有用的错误,但不确定如何将该错误传递给前端以对其进行有意义的操作。
目前,如果提交需要钱包批准的交易,用户将被引导至钱包。审核通过后,如果在交易功能中断言语句失败,则钱包提示有错误/可能要重试。assert 语句有一条有用的错误消息,但必须访问 NEAR 资源管理器才能看到该事务。
在这两种情况下,用户都不会被提醒什么是错误的/什么需要修复,而只是留下一个无法运行的应用程序。有没有办法捕捉错误或将它们呈现给前端以对它们做一些有意义的事情?
解决方案
该log
方法将任意数据(默认类型为string
)附加到返回给客户端的事务结果中。
您应该能够从调用合约方法的任何位置将其作为交易结果对象的一部分进行检查。
我相信这就是您在 NEAR Explorer 中看到的内容。
这是方法near-sdk-as
推荐阅读
- javascript - 将 div 转换为像里程表一样的行为
- asp.net-mvc - 搜索任何剑道网格字段,无论其列名如何
- java - 如何在 Mac 上使用 chrome、selenium、chromedriver 启用远程调试
- python - Python multitprocessing 处理文件
- bluetooth - 通过蓝牙自动建立智能手机和PC之间的连接
- node.js - 尝试添加/更新文档并使用猫鼬增加计数
- css - 增加/降低图像不透明度作为图像列表之间的过渡
- c# - 如何为我的条目控件使用自定义渲染器
- python - 如何使用 rawgpy 开始使用 RAWG api?
- amazon-web-services - S3:Java SDK:删除对象标记抛出“您必须提供 Content-Length HTTP 标头”错误