I want to develop a user interface which accepts an image file from the user, and a ERC1155 smart contract capable of minting tokens backed by the uploaded image. In other words, I need my ERC1155 tokens to represent a specific image. However, there are some obscurities for me regarding this topic:
- What is Token URI? What are its use cases? What does it offer to users?
- What is Token Metadata? Is it different from Token URI?
- What are our options if we want to host our token URI somewhere? Is it necessary to host the URI on a decentralized storage such as IPFS? What happens if we keep the URI on the smart contract?
- Why are there third party services ( like Infura and NFT.storage ) for establishing connection to IPFS to upload the NFT image. I mean why we cannot directly get connected to the IPFS?
Thanks in advance for the clarification