Как использовать loader.load («filename.json.gz «) — Загрузка сжатого файла в threejs

#javascript #json #reactjs #amazon-s3 #three.js

#javascript #json #reactjs #amazon-s3 #three.js

Вопрос:

Я уже сжал и имею файл gz в s3. который здесь, https://oic-accounts.s3.ap-south-1.amazonaws.com/3d-try-json-files/gzip/3.json.gz

Но когда я пытаюсь загрузить в threejs с помощью loader.load("https://oic-accounts.s3.ap-south-1.amazonaws.com/3d-try-json-files/gzip/3.json.gz", onLoadModel, this.xhrPercentage);

Он не работает и выдает VM4245:1 Uncaught SyntaxError: Unexpected token in JSON at position 0 эту ошибку.

P.S: Загруженный файл gzip content type application/json

Спасибо за ваше ценное чтение и ответы 🙂

Комментарии:

1. При открытии URL-адреса я вижу Access Denied сообщение об ошибке. Вы должны проверить в своем серверной части AWS, правильно ли определены разрешения.

2. Думаю, что какая-то проверка подлинности сделана. я не уверен. Но я получил решение от slack

Ответ №1:

Отвечая на мой вопрос, немного неловко. но если кто-то столкнется с этой проблемой в будущем, это наверняка будет полезно.

Итак, сразу. Установите content-encoding:'gzip', content-type:'application/json в заголовке aws для файла и удалите .gz из url. Вот и все 🙂