Before deploying to the production, I deployed a sample NFT contract on the Goerli network, the JSON file and the image file were stored on AWS S3, and everything worked fine, the NFT image and the name show correctly on Metamask after I have imported.
But after I have switched to the production, the NFT contract has been deployed onto Polygon Mainnet, the metadata JSON and the image are generated in real-time from my hosted API, my hosted API is returned in the metadata file in applicatoin/json, and the image is in SVG format - image/svg+xml, I can see the NFT name and image and others on OpenSea correctly. But when I switched to Polygon Mainnet on Metamask and imported the NFT I minted, seems like it cannot resolve the metadata and the image… Any thought to resolving this issue?
I have seen there are related discussions on this forum Post - 18052 (I cannot post link) . Is that mean I have to PUT my metadata.json and the image on IPFS? And I cannot host my personal metadata service?