【问题标题】:Accessing local state using PyTEAL使用 PyTEAL 访问本地状态
【发布时间】:2022-07-12 23:33:23
【问题描述】:

我在使用 PyTeal 访问本地状态时遇到了一些问题。

我正在尝试在以这种方式选择加入智能合约的帐户的本地状态中存储一个值:

App.localPut(Int(0),Bytes("owner"), account_1)

,其中 account_1 是一个

Algorand address

而且这个交易运行良好。

现在,我正在尝试从

发送 NoOp 事务
account_1

,并在 accounts 数组中传递 1 个地址 - 发送上述交易的帐户。

问题:

is_owner = Txn.sender() == App.localGet(Int(1), Bytes("owner"))

is_owner 总是返回 false。

关于我做错了什么有什么建议吗?谢谢。

【问题讨论】:

    标签: python sdk state algorand pyteal


    【解决方案1】:

    听起来您没有使用正确的地址编码。

    您使用的是 32 字节的公钥(不是 58 字节的密钥)吗?

    尝试在 58 字节密钥上使用decode_address 函数,您将收到 32 字节密钥。应该可以的。

    【讨论】:

      猜你喜欢
      • 2019-08-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-30
      • 2023-03-18
      • 2013-03-09
      • 2019-10-14
      • 2021-09-29
      相关资源
      最近更新 更多