wladich / nakarte

Source code of site http://nakarte.me
MIT License
153 stars 38 forks source link

Попытка загрузить файл вешает браузер #500

Open wladich opened 3 years ago

wladich commented 3 years ago

http://slazav.mccme.ru/gps/20061125at.zip

myadzel commented 3 years ago

Утилита архивации под MacOS не может открыть этот файл.

Добавлю сюда же: 1) файл movescount-pois.gpx - загружается.

2) его заархивированная версия выдает ошибку - File "movescount-pois.gpx" has unsupported format or is badly corrupt, no data could be loaded.

movescount-pois.gpx.zip

myadzel commented 3 years ago

Также у меня есть архив, который выдает исключение из модуля tyny-Inflate, соответственно, загрузчик крутится и ничего не происходит, вызов jsInflate также нужно обернуть в try/catch.

wladich commented 3 years ago

Если архив не секретный, приложи его пожалуйста

myadzel commented 3 years ago

Если архив не секретный, приложи его пожалуйста

Рабочий, поэтому не могу, пробовал на других -- пока не получается, но так как tyny-Inflate бросает throw, то нужно обернуть в любом случае.

myadzel commented 3 years ago

Еще наблюдения.

В этом странном архиве файл OziExplorer Waypoint.

Если я его зипую стандартной утилитой MacOS (в аттаче) и пытаюсь загрузить на nakarte, то модуль js-unzip пишет в консоль - File is using bit 3 trailing data descriptor. Not supported., надо бы его заменить на что-то иное.

test-ozi.wpt.zip

wladich commented 3 years ago

По текущему статусу - я сейчас доделаю тесты для сервисов, загрузка файлов - следующий кандидат на тестирование. Хорошо, если получится собрать всяких разных файлов. С хорошими тестами можно будет заняться заменой библиотек, работающих с zip

myadzel commented 3 years ago

В рабочем проекте я использую JSZip (https://www.npmjs.com/package/jszip), он на битый архив ругается Uncaught (in promise) Error: Corrupted zip: can't find end of central directory, остальное все читает отлично.

wladich commented 3 years ago

Мне по-прежнему очень не нравится его размер. Ну и тесты всё-таки надо сделать.