BlockchainContractValue (for Ethereum)
BlockchainContractValue[caddr]
从以太坊区块链地址 caddr 的包含 Wolfram 表达式的合约中获取结果.
BlockchainContractValue[caddr,prop]
获取从地址为 caddr 的包含 Wolfram 表达式的合约中获得的结果的属性 prop.
BlockchainContractValue[caddr,func]
调用地址为 caddr 的合约的函数 func.
BlockchainContractValue[caddr,assoc]
调用地址为 caddr 的合约,其属性由 Association assoc 定义.
更多信息
- 给出以太坊合约的基本信息. 默认情况下,给出的是最新区块的状态.
- BlockchainContractValue 可访问以太坊 mainnet(默认)和 testnet (sepolia). 想要指定这些网络,可以使用 BlockchainBase 选项.
- BlockchainContractValue 从以太坊区块链提取合约,然后运行指定的函数. 它不能往区块链中写入数据;可用 BlockchainTransactionSubmit 写入数据.
- BlockchainContractValue[caddr,func] 调用合约函数,其中 func 必须是定义函数名称和输出数据类型的 Typed 表达式.
- BlockchainContractValue[caddr,assoc] 调用带有附加参数的合约,其中,关联 assoc 必须具有以下属性:
-
"Function" 定义要调用的函数的 Typed 表达式 - 此外,关联 assoc 可以有以下属性:
-
"Inputs" 要调用的函数的输入参数 "Sender" 正在调用合约的发送者的地址 "BlockNumber" 与区块链特定状态关联的区块号 - 如果无法在给定地址的合约中成功计算某个特定函数,BlockchainContractValue 返回 Missing["NoResult"].
范例
打开所有单元 关闭所有单元基本范例 (5)
给定地址,调用函数 name、symbol 和 decimals:
address = "f230b790E05390FC8295F4d3F60332c93BEd42e2";BlockchainContractValue[address, Typed["name", "string"], BlockchainBase -> {"Ethereum", "Mainnet"}]BlockchainContractValue[address, Typed["symbol", "string"], BlockchainBase -> {"Ethereum", "Mainnet"}]BlockchainContractValue[address, Typed["decimals", "uint256"], BlockchainBase -> {"Ethereum", "Mainnet"}]address = "cEf2Ba8C04343566867d1c3e5948efE4aC800E7b";BlockchainContractValue[address, "Result", BlockchainBase -> {"Ethereum", "Testnet"}]omgtoken = First[BlockchainTokenData["OMGToken", "TokenAddress", BlockchainBase -> {"Ethereum", "Mainnet"}]]BlockchainContractValue[omgtoken, Typed["totalSupply", "uint256"], BlockchainBase -> {"Ethereum", "Mainnet"}]omgtoken = First[BlockchainTokenData["OMGToken", "TokenAddress", BlockchainBase -> {"Ethereum", "Mainnet"}]]sender = RandomChoice[First[BlockchainTokenData["OMGToken", "TransferList", BlockchainBase -> "Ethereum"]]]["Sender"]BlockchainContractValue[omgtoken, <|"Function" -> Typed["balanceOf", "address" -> "uint256"], "Inputs" -> sender|>, BlockchainBase -> {"Ethereum", "Mainnet"}]BlockchainContractValue[omgtoken, <|"Function" -> Typed["balanceOf", "address" -> "uint256"], "Inputs" -> sender, "BlockNumber" -> 6000000|>, BlockchainBase -> {"Ethereum", "Mainnet"}]查看售卖期间 Token ID 为 883551 的 CryptoKitty 拍卖的情况:
BlockchainContractValue["b1690C08E213a35Ed9bAb7B318DE14420FB57d8C", <|"Function" -> Typed["getAuction", "uint256" -> {"address", "uint256", "uint256", "uint256", "uint256"}], "Inputs" -> 883551|>, BlockchainBase -> {"Ethereum", "Mainnet"}]选项 (2)
BlockchainBase (2)
Mainnet (1)
相关指南
-
▪
- 使用以太坊区块链
历史
2019年引入 (12.0)
文本
Wolfram Research (2019),BlockchainContractValue,Wolfram 语言函数,https://reference.wolfram.com/language/ref/blockchain/BlockchainContractValue-Ethereum.html.
CMS
Wolfram 语言. 2019. "BlockchainContractValue." Wolfram 语言与系统参考资料中心. Wolfram Research. https://reference.wolfram.com/language/ref/blockchain/BlockchainContractValue-Ethereum.html.
APA
Wolfram 语言. (2019). BlockchainContractValue. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/blockchain/BlockchainContractValue-Ethereum.html 年
BibTeX
@misc{reference.wolfram_2026_blockchaincontractvalue, author="Wolfram Research", title="{BlockchainContractValue}", year="2019", howpublished="\url{https://reference.wolfram.com/language/ref/blockchain/BlockchainContractValue-Ethereum.html}", note=[Accessed: 17-August-2026]}
BibLaTeX
@online{reference.wolfram_2026_blockchaincontractvalue, organization={Wolfram Research}, title={BlockchainContractValue}, year={2019}, url={https://reference.wolfram.com/language/ref/blockchain/BlockchainContractValue-Ethereum.html}, note=[Accessed: 17-August-2026]}