gpt4 book ai didi

solidity - 使用 token erc1155 在solidity 0.8 中进行安全传输

转载 作者:行者123 更新时间:2023-12-04 07:18:10 28 4
gpt4 key购买 nike

我收到这个错误ERC1155: transfer to non ERC1155Receiver implementer当尝试转移到智能合约时,我发现了这个文档 https://docs.openzeppelin.com/contracts/4.x/api/token/erc1155但仍然不知道如何解决这个问题我必须抽象IERC1155Receiver我的持有者 token 1155 中的接口(interface)

最佳答案

收货契约(Contract)需执行onERC1155BatchReceived()基于 ERC-721 的函数定义。

pragma solidity ^0.8;

contract MyContract {
function onERC721Received(address _operator, address _from, uint256 _tokenId, bytes memory _data) external returns(bytes4) {
// here you can (but don't have to) define your own logic - emit an event, set a storage value, ...

// this is the required return value described in the EIP-721
return bytes4(keccak256("onERC721Received(address,address,uint256,bytes)"));
}
}

关于solidity - 使用 token erc1155 在solidity 0.8 中进行安全传输,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68662387/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com