我一直在测试我的 erc-721 合约,并使用 ipfs 哈希的链接ipfs://QmeB87321i121xN88bXZzmjSUXqS46B8bU3H9ocyTb8tJf作为基本令牌 URI。合约已部署,项目已由我铸造,但 OpenSea 无法按预期读取该元数据 uri。OpenSea 的文档表明这应该足够了。
我的合同
pragma solidity ^0.5.0;
import "./ERC721Tradable.sol";
import "openzeppelin-solidity/contracts/ownership/Ownable.sol";
contract Creature is ERC721Tradable {
constructor(address _proxyRegistryAddress)
public
ERC721Tradable("StygianCoins", "STG", _proxyRegistryAddress)
{}
function baseTokenURI() public pure returns (string memory) {
return "https://ipfs.io/ipfs/QmeB87321i121xN88bXZzmjSUXqS46B8bU3H9ocyTb8tJf";
}
function contractURI() public pure returns (string memory) {
return "https://contract-abis.herokuapp.com/api/contract/stygian-coins";
}
}
Run Code Online (Sandbox Code Playgroud) 任何版本都有适用于 Web3 的类型吗?我正在 Node.js 中编写后端 API,并且我更喜欢用 TypeScript 编写。
我问这个问题是因为我一直在尝试使用 Web3 在 TypeScript 中编写 Express 应用程序并遇到此错误(以及更多错误):
This expression is not constructable.
Type 'typeof import("c:/Users/Archie/node_modules/web3-eth-contract/types/index")' has no construct signatures.
line: const contract = new Contract(abi.json, address);
Run Code Online (Sandbox Code Playgroud)