Closed3
polygonで大量ミントしたNFTがOpenSeaで表示されない問題は大量txの発行で解決しよう
概要
- polygonチェーンで大量のNFTをミントしたが、いつまでたってもOpenSeaに反映されない問題で悩んだあたりの話
結論
- おそらくOpenSea側の問題
- 1txあたりのミント数をおさえて大量にtx発行しよう
- マジックナンバーは8。1txあたり9ミント以上するとOpenSeaにスパム判定されてしまう
- mainnetは問題なし
スクリプト
- hardhatで実行
- forで適当にループ回してた(途中で
ProviderError: transaction underpriced
で終了したりするのでそのたびに再度実行する)
import { ethers } from "hardhat";
async function main() {
const factory = await ethers.getContractFactory("コントラクトのクラス名");
const contract = factory.attach("アドレス");
for (let index = 0; index < 100; index++) {
await contract.ownerMint(8);
}
}
main()
.then(() => process.exit(0))
.catch((error) => {
console.error(error);
process.exit(1);
});
以下メモ
etc
Solidityについてワイワイ学ぶコミュニティ「solidity-jp」を作りました!
いまから学んでみたい/学習中だけどの日本語の情報が少ない/古くて時間がかかっているという方、一緒に学びましょう〜!!
また、TwitterにてSolidityに関する技術情報を発信しています!
未検証だが、メインネットで大量ミントする場合はちゃんと反映されるらしい。
Testnet/OpenSea is much more forgiving. Depending on the traffic at the time I was once able mint 1000 tokens at a time.
No way this could ever happen on Mainet.
追記 2022/08/06
ためしに数千体mintしたところ、正しく表示できた。1000体あたり10分くらいで反映される。
スパム判定されたコントラクトはサポートに問い合わせないと復活しないと思われる⭐未検証⭐
このスクラップは2023/07/18にクローズされました