IPFS — мощная система хранения файлов, но не без ограничений. В последние месяцы многие люди и проекты начали хранить папки с тысячами (иногда десятками тысяч) файлов. При попытке просмотреть содержимое этих папок через шлюз они не понимают, почему содержимое не загружается.
Простой ответ: шлюзы IPFS не имеют встроенной нумерации страниц. Это означает, что когда вы пытаетесь просмотреть папку, содержащую, скажем, 10 000 файлов, шлюз и браузер пытаются загрузить все эти файлы одновременно. Как вы можете себе представить, это может быть непосильным для браузера.
Как это исправить?
Ну, ты не можешь. Но вы можете обойти это. Каждый из файлов в вашей папке по-прежнему доступен, поэтому вы должны использовать ссылку на каталог вашей папки с именем файла, добавленным в конце. Допустим, CID вашей папки "MY_FOLDER_CID". Допустим, у вас есть файл с именем «1.json». Вы загрузите этот файл, перейдя по ссылке:
GATEWAY_URL/ipfs/MY_FOLDER_CID/1.json
Это по-прежнему адресуемый по содержимому способ доступа к файлам в папках в IPFS. Если содержимое папки когда-либо изменится, изменится CID папки и, следовательно, изменится путь к файлу. У вас есть те же гарантии проверяемости с этим методом.
Что делать, если мне нужны CID внутри папки?
Чтобы получить все CID дочерних файлов, вам потребуется запустить собственный локальный узел IPFS. Вам нужно будет добавить папку на ваш узел IPFS, а затем запустить следующую команду из командной строки:
ipfs dag get <FOLDER CID>