Articles
无结果
文章预览图

智能合约 SDK 更新至 V2

在将 SDK 更新至 V2 的工作中,我们一直在完善文档,争取反映新增功能。本周我们已更新一些示例,阐明如何用 SDK 调用智能合约。这些示例阐述在 Algorand 支持的每种语言(Python、JavaScript、Java 和 Go)中使用已编译 TEAL 的过程,展示合约或托管类型的账户,并使用 TEAL 授权签名。

TEAL 程序经 goal 工具编译之后才能在 SDK 中使用。goal TEAL 演示文档阐述了这一编译过程。

SDK 参考文档中探讨了每个 SDK 的安装过程。也可以参阅 V1 到 V2 迁移指南

示例代码片段贯穿整个 V2 指南,并出于简洁明了的目的有所节略。可在 GitHub 仓库 (/examples/smart_contracts) 中找到 V1 和 V2 每个 SDK 的完整运行代码示例,也可以直接下载 (.zip)。

合约账户和委托签名账户 SDK 使用方法

用作合约账户时,TEAL 代码经编译后返回一个 Algorand 地址。任何账户都可以使用标准交易向此合约账户地址发送 Algo 币或 Algorand 资产。从合约账户发送时,TEAL 程序中的逻辑决定是否批准交易。合约账户很适合设立托管类型的账户,供用户限制提款或执行定期付款等操作。

您还可以使用 TEAL 进行委托签名,也就是您用私钥或多重签名密钥签名 TEAL 程序,然后您就可以保存这个逻辑签名,交给其他人以您的授权提交交易。TEAL 程序可以限制您委托的授权额度。例如,您可以创建委托签名,允许公共事业公司从您账户中每 50000 个区块拿走至多 x 个 Algo 币。

python

JavaScript

智能合约

pyteal

go

java

ASC1

2020年12月04日