Подпишись на канал фаундера и разработчика экосистемы tonpie
Почему я не получаю сообщение об ошибке при попытке вызвать несуществующий метод get?
-
Используя JSON API, я пытаюсь вызвать метод get для несуществующего метода в смарт-контракте.
Я отправляю запрос POST в
/runGetMethod
.{ "address": "...", "method": "nonexistentmethodname", "stack": [] }
Я ожидаю получить сообщение об ошибке, но получаю результат, показанный ниже:
{ "ok": true, "result": { "@type": "smc.runResult", "gas_used": 0, "stack": [ [ "num", "0x1083b" ] ], "exit_code": -13, "@extra": "1661342201.3654168:14:0.5828632398991145" } }
Относится ли "-13" к коду ошибки 13?
13 - Out of gas error. Thrown by TVM when the remaining gas becomes negative.
Этот вопрос был импортирован из чата Telegram: > <***Скрыто***
click to show
-
Нет, это не тот же код выхода. Вы получаете код выхода "-13". API вызвал lite-server и получил некоторый результат, поэтому вы получили 200 OK. -13 код выхода, я бы сказал, это означает, что method_id не найден в smartcontract (но я не могу найти это замечание в документации).
13 - Ошибка с нехваткой газа. (это не отрицательное число и означает, что кончился газ)
-