You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flow CLI移除合约失败[错误码1056]求助:权限问题排查

Flow Testnet移除合约授权错误(Error 1056)解决方案

你遇到的Error 1056是因为Flow Testnet对合约移除操作强制要求多签授权校验,哪怕是部署合约的账户,直接用基础remove-contract命令也无法通过校验,必须通过授权交易的方式执行移除操作。

具体操作步骤

  1. 编写Cadence交易脚本
    创建一个名为remove_HelloWorld.cdc的文件,内容如下:
transaction {
  prepare(acct: AuthAccount) {
    // 移除指定名称的合约
    acct.contracts.remove(name: "HelloWorld")
  }
}
  1. 用授权命令提交交易
    在终端执行以下命令,替换成你的账户地址和签名者配置:
flow accounts auth 0xf6827b3c1293b661 remove_HelloWorld.cdc --network testnet --signer testnet-account

这个命令会自动使用你的testnet-account签名者完成授权校验,提交交易后即可移除目标合约。

额外注意事项

  • 确认你的Flow CLI配置中,testnet-account对应的私钥属于0xf6827b3c1293b661账户
  • 交易提交后,可通过flow transactions status <返回的交易ID> --network testnet查询执行状态
  • 你的Flow CLI版本0.41.0完全支持该命令,无需升级

参考文档内容翻译

使用Flow CLI移除合约
移除账户上的合约有两种方式:

  1. 基础命令:flow accounts remove-contract <合约名称> --network <网络环境> --signer <签名者>
    该命令仅适用于不需要授权校验的测试环境(如本地模拟器),在Testnet、Mainnet等正式网络中会触发授权错误。
  2. 授权交易方式:编写Cadence交易脚本,通过flow accounts auth命令签名并提交,这是正式网络中移除合约的标准方式。

内容的提问来源于stack exchange,提问作者Vasu Mistry

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 14:15:39