Страница 1 из 1

Проблема с подгрузкой файлов WebGL.

СообщениеДобавлено: 30 сен 2022, 19:01
breNnor-
Всем привет! Проблема в следующем есть проект WebGL для яндекс игр, у них на сайте ограничение 100мб на загрузку архива.
Я для экономии решил звуки подгружать с сайта и не хранить их в проекте т.к звуков на 70 мб.

Реализация такая:
Через карутину получаем наш звук и далее вставляем в AudioSource.
Синтаксис:
Используется csharp
public string       Song_URL;
private AudioClip _song;

private void Awake()
    {
        StartCoroutine(GetSong(GameData[_songIndex].Song_URL));
    }

IEnumerator GetSong (string url)
    {
        UnityWebRequest request = UnityWebRequestMultimedia.GetAudioClip("https://getfile.dokpub.com/yandex/get/" + url, AudioType.MPEG);
       
        yield return request.SendWebRequest();

        _song = DownloadHandlerAudioClip.GetContent(request);
    }
 


Проблема в том что в редакторе загрузка проходит и музыка играет.
Но в билде на сайте яндекса загрузка не проходит. Ошибка связана с CORS protocol. Кто сталкивался как вы решили?

Скрытый текст:
Access to XMLHttpRequest at 'https://getfile.dokpub.com/yandex/get/https://disk.yandex.ru/d/69K09EZs1KaBkg' from origin 'https://app-183856.games.s3.yandex.net' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

Re: Проблема с подгрузкой файлов WebGL.

СообщениеДобавлено: 30 сен 2022, 21:53
DbIMok
нужно настроить сервер https://docs.unity3d.com/Manual/webgl-networking.html

Re: Проблема с подгрузкой файлов WebGL.

СообщениеДобавлено: 30 сен 2022, 23:02
breNnor-
DbIMok писал(а):нужно настроить сервер https://docs.unity3d.com/Manual/webgl-networking.html


Дымок, я это уже видел.
Подскажи как настроить мне сервера яндекс игр? Может к ним устроится или как то по другому? :D

Re: Проблема с подгрузкой файлов WebGL.

СообщениеДобавлено: 01 окт 2022, 01:39
DbIMok
речь про сервер на котором лежат скачиваемые файлы. у яндекса (вероятно) все правильно настроено

Re: Проблема с подгрузкой файлов WebGL.

СообщениеДобавлено: 01 окт 2022, 19:00
breNnor-
DbIMok писал(а):речь про сервер на котором лежат скачиваемые файлы. у яндекса (вероятно) все правильно настроено


Музыка лежит на Яндекс.Диск. Но так как с диска прямой ссылки на скачку нет, пришлось прибегнуть к костылю в виде GetFile.dokpub.com через него и идет загрузка.

Адрес получается такой https://getfile.dokpub.com/yandex/get/https://disk.yandex.ru/d/69K09EZs1KaBkg может это из-за костыля проблема?

Re: Проблема с подгрузкой файлов WebGL.

СообщениеДобавлено: 02 окт 2022, 14:39
Saltant
breNnor- писал(а):
DbIMok писал(а):речь про сервер на котором лежат скачиваемые файлы. у яндекса (вероятно) все правильно настроено


Музыка лежит на Яндекс.Диск. Но так как с диска прямой ссылки на скачку нет, пришлось прибегнуть к костылю в виде GetFile.dokpub.com через него и идет загрузка.

Адрес получается такой https://getfile.dokpub.com/yandex/get/https://disk.yandex.ru/d/69K09EZs1KaBkg может это из-за костыля проблема?

Покури апи от диска, там наверно есть инфа как файл то получать https://yandex.ru/dev/disk/

Re: Проблема с подгрузкой файлов WebGL.

СообщениеДобавлено: 02 окт 2022, 17:42
breNnor-
Saltant писал(а):
breNnor- писал(а):
DbIMok писал(а):речь про сервер на котором лежат скачиваемые файлы. у яндекса (вероятно) все правильно настроено


Музыка лежит на Яндекс.Диск. Но так как с диска прямой ссылки на скачку нет, пришлось прибегнуть к костылю в виде GetFile.dokpub.com через него и идет загрузка.

Адрес получается такой https://getfile.dokpub.com/yandex/get/https://disk.yandex.ru/d/69K09EZs1KaBkg может это из-за костыля проблема?

Покури апи от диска, там наверно есть инфа как файл то получать https://yandex.ru/dev/disk/


Короче прямую ссылку я намутил, это еще один сервис яндекса Dowloader.
Он дает скачивать только авторизованным пользователям, в приложение выбрасывает 403 Forbbiden (Доступ запрещен).
Люди пользуются WebDav, но это уже для меня точно перебор.

Re: Проблема с подгрузкой файлов WebGL.

СообщениеДобавлено: 02 окт 2022, 17:56
Saltant
Там есть авторизация, полюбому нада вначале какой то токен авторизации получить и потом соответственно тянуть контент вместе с ним. Я скинул ссылку, почекай.