Я щелкнул правой кнопкой мыши историю транзакций в клиенте QT и вставил TxID ниже.
Q1
В следующем тесте кто-нибудь может объяснить, какова цель суффикса -000
и для чего он используется?
gettransaction 54b9be14443b152b02ed0b18d27504631cccfa84ce9ada03f9558fbb85b6129c-000
Q2
Почему необработанная транзакция не поддерживает тот же формат идентификатора транзакции, что и предыдущая команда? (мне нужно удалить -000 символов)
getrawtransaction 54b9be14443b152b02ed0b18d27504631cccfa84ce9ada03f9558fbb85b6129c-000
ERROR: parameter 1 must be hexadecimal string
Q3
Когда я разрешаю index=1
в bitcoin.conf и переиндексировать, почему я не могу вызывать GetTransaction
транзакции не в своем кошельке? Я хотел бы получить результаты в формате JSON
Q1: Запись в бухгалтерской книге в представлении кошелька соответствует одному выходу транзакции. Суффикс нужен для того, чтобы различать, какой вывод транзакции используется. Это немного странный выбор форматировать его таким образом; в большинстве мест в качестве разделителя используется ':'.
Q2: getrawtransaction
запрашивает пул памяти, набор неизрасходованных выходных данных транзакции и блокчейн (если txindex
он включен) для транзакции. Он не запрашивает один вывод, поэтому вы передаете только шестнадцатеричный идентификатор. Вы можете запросить выходные данные отдельных неизрасходованных транзакций с помощью gettxout
команды (которая принимает txid + индекс вывода в качестве отдельных аргументов). Вы можете передать дополнительную 1 в качестве аргумента для getrawtransaction, чтобы он был декодирован, а не только необработанный шестнадцатеричный код. decoderawtransaction
может сделать это для произвольных необработанных транзакций в шестнадцатеричном кодировании. Возможно, это ответ на Q3.
Q3: gettransaction
это кошелек RPC. Он не может работать ни с чем другим, так как ему нужен более высокий уровень абстракции. Он вычисляет дебет/кредит и комиссию, что требует определения того, какие выходы исходят от/к вам, а какие являются сдачей. Для этого нужно знать, какие ключи принадлежат вам. Он не запрашивает блокчейн, но вы можете использовать « getrawtransaction
[txid] 1», чтобы получить декодированную форму транзакций блокчейна (с txindex
включенным).
gettransaction
команда, использующая эту accounts
функцию, будет отображать транзакцию (в графическом интерфейсе) и соответствующий идентификатор при move
выдаче a. Мне также интересно, какие условия вызовут -000
появление чего-то другого, кроме a.gettransaction 54b9be14443b152b02ed0b18d27504631cccfa84ce9ada03f9558fbb85b6129c-Invalid
производитель вещей7