SASGIS - SAS.Планета |
View Issue Details |
|
ID | Project | Category | View Status | Date Submitted | Last Update |
0003422 | SAS.Планета | [All Projects] Хотелка | public | 19-03-2019 07:10 | 29-03-2021 18:18 |
|
Reporter | zed | |
Assigned To | zed | |
Priority | normal | Severity | minor | Reproducibility | have not tried |
Status | resolved | Resolution | fixed | |
Platform | | OS | | OS Version | |
Product Version | 181221 | |
Target Version | 191221 | Fixed in Version | 191221 | |
|
Summary | 0003422: Добавить альтернативную реализацию IDownloader и IDownloaderAsync на основе libcurl |
Description | Реализация на основе WinInet перестала удовлетворять по нескольким причинам.
Наиболее веские:
- невозможно гибко ограничивать максимальное количество соединений с сервером (возможна только глобальная настройка для процесса)
- повсеместный переход сервисов на https и окончание поддержки WinXP/Win7 со стороны Microsoft, т.е. библиотека wininet не будет обновляться и вероятно, рано или поздно перестанет понимать новые алгоритмы/протоколы шифрования. И тут может сильно помочь внешняя библиотека в составе SAS (естественно, до тех пор, пока и в ней не дропнут поддержку этих операционок). |
Steps To Reproduce | |
Additional Information | Заголовочники libcurl или даже обёртку можно взять, например, из mORMot https://github.com/synopse/mORMot/blob/master/SynCrtSock.pas#L2417
В том же mORMot, кстати говоря, есть унифицированные и взаимозаменяемые обёртки для WinInet, WinHttp и cUrl. Так что, вероятно, и нашу текущую обёртку WinInet от Alsinoe можно заменить на эту.
|
Tags | No tags attached. |
Relationships | parent of | 0003421 | resolved | zed | SAS.Планета | Сделать фабрику для создания IDownloader и IDownloaderAsync | parent of | 0001187 | closed | Tolik | SAS.Планета | Не работают карты с длинным URL | parent of | 0003562 | resolved | zed | SAS.Планета | Не работает поиск по кадастровому номеру росреестра | related to | 0003469 | resolved | zed | Доработка карты (ZMP) | Не грузятся слои росреестра | related to | 0003587 | resolved | zed | SAS.Планета | В Настройки добавить выбор типа прокси сервера | related to | 0001962 | resolved | zed | SAS.Планета | Добавить возможность работы через SOCKS 5 прокси | related to | 0003753 | resolved | zed | SAS.Планета | Не работает "скачивание" локального файла из скрипта |
|
Attached Files | normaliz.dll (23,552) 06-11-2019 17:29 http://www.sasgis.org/mantis/file_download.php?file_id=2386&type=bug Normaliz.WinXP.SP3.zip (13,557) 06-11-2019 17:51 http://www.sasgis.org/mantis/file_download.php?file_id=2387&type=bug |
|
Issue History |
Date Modified | Username | Field | Change |
19-03-2019 07:10 | zed | New Issue | |
19-03-2019 07:11 | zed | Status | new => confirmed |
19-03-2019 07:11 | zed | Relationship added | parent of 0003421 |
27-03-2019 12:24 | vdemidov | Relationship added | parent of 0001187 |
23-07-2019 14:16 | vdemidov | Target Version | 190707 => 191221 |
23-07-2019 16:56 | vdemidov | Target Version | 191221 => 211230 |
26-07-2019 07:24 | zed | Relationship added | related to 0003469 |
07-10-2019 19:00 | zed | Relationship added | parent of 0003562 |
30-10-2019 10:52 | zed | Assigned To | => zed |
30-10-2019 10:52 | zed | Status | confirmed => assigned |
30-10-2019 10:52 | zed | Target Version | 211230 => 191221 |
30-10-2019 11:15 | zed | Note Added: 0019406 | |
30-10-2019 12:35 | Tolik | Note Added: 0019409 | |
30-10-2019 14:07 | gera5 | Note Added: 0019411 | |
31-10-2019 19:23 | zed | Note Added: 0019418 | |
01-11-2019 06:46 | Tolik | Note Added: 0019419 | |
06-11-2019 17:15 | VMatveev | Note Added: 0019434 | |
06-11-2019 17:29 | VMatveev | File Added: normaliz.dll | |
06-11-2019 17:37 | VMatveev | Note Edited: 0019434 | bug_revision_view_page.php?bugnote_id=19434#r7519 |
06-11-2019 17:51 | zed | Note Added: 0019435 | |
06-11-2019 17:51 | zed | File Added: Normaliz.WinXP.SP3.zip | |
14-11-2019 17:29 | zed | Note Added: 0019440 | |
15-11-2019 10:43 | zed | Note Added: 0019443 | |
17-11-2019 05:27 | Tolik | Note Added: 0019448 | |
17-11-2019 06:58 | zed | Note Added: 0019449 | |
17-11-2019 12:53 | Tolik | Note Added: 0019450 | |
17-11-2019 18:07 | zed | Note Added: 0019451 | |
21-11-2019 14:58 | zed | Relationship added | related to 0003587 |
22-11-2019 16:31 | zed | Status | assigned => resolved |
22-11-2019 16:31 | zed | Fixed in Version | => 191221 |
22-11-2019 16:31 | zed | Resolution | open => fixed |
15-01-2021 17:36 | zed | Relationship added | related to 0001962 |
29-03-2021 18:18 | zed | Relationship added | related to 0003753 |
Notes |
|
(0019406)
|
zed
|
30-10-2019 11:15
|
|
В ночной версии можно начинать тестировать. Чтобы заработала новая качалка в папку с SAS нужно распаковать архив с библиотекой libcurl: https://yadi.sk/d/FR_7U7bbbiEr6w
Из известных недоделок:
- игнорируются настройки прокси
- игнорируются настройки максимального числа соединений с сервером
Если в процессе тестирования возникнут какие-либо ошибки, надо взять вот этот exe: https://yadi.sk/d/1ZuSPnnUEV6sfw воспроизвести ошибку на нём, закрыть SAS и приложить сюда (или выложить на обменник) содержимое папки HttpLog, которая появится в корне программы. |
|
|
(0019409)
|
Tolik
|
30-10-2019 12:35
|
|
Супер! Спасибо!
Заработал слой Росреестра и поиск по нему.
Правда, слой отображается какими-то пятнами, надо подвигать туда-сюда, чтобы все тайлы скачались. Ошибка 503 вылезает иногда из кадастровой карты, а другие нормально работают, понаблюдаю ещё |
|
|
(0019411)
|
gera5
|
30-10-2019 14:07
|
|
Ура заработал слой с земельными участками!!!
Спасибо Огромное!!! |
|
|
(0019418)
|
zed
|
31-10-2019 19:23
|
|
> Ошибка 503 вылезает иногда из кадастровой карты
Возможно не нравится слишком большое число одновременных подключений к серверу. Задайте в настройках карты 1.
И кстати, оказывается, с лимитом числа соединений уже было всё в порядке. И есть улучшение по сравнению со старой качалкой: если у карты поставить лимит больше, чем задано глобально (на вкладке Настройка) число соединений увеличивается, как и задумано. А вот старая качалка не могла так - верхний лимит был всегда для всех карт задан этой глобальной настройкой.
Сегодня ещё кое-что поправил в коде и по сути, в качалке осталось только разобраться с настройками прокси. Следом ещё надо будет провести небольшой рефакторинг, убрать дублирование кода и, возможно, добавить в настройки переключатель - какую качалку использовать. |
|
|
(0019419)
|
Tolik
|
01-11-2019 06:46
|
|
Поставил 1 подключение и даже паузу 1000 мс - все равно, один тайл скачивается, один - 503. Но это только Росреестр, с другими проблем нет, так что curl в порядке, я думаю. |
|
|
(0019434)
|
VMatveev
|
06-11-2019 17:15
(edited on: 06-11-2019 17:37) |
|
К сожалению, у меня эта долгожданная фича не работает — при запуске САС-а пишет: "Приложению не удалось запуститься, поскольку Normaliz.dll не был найден." :( Версия Nightly.191102.10051, ОС Windows XP SP2.
После пары минут гугления нашел-таки эту dll-ку, совместимую с моей версией винды, проверил её на вирусню в VirusTotal, кинул её в C:\WINDOWS\system32 - ура, заработало! Прикрепил её.
Я счастлив, что САС теперь умеет в https и на старушке XP! Спасибо огромное!
|
|
|
(0019435)
|
zed
|
06-11-2019 17:51
|
|
Для SP2 раньше был пакет idndlpackage.exe, который устанавливал эту библиотеку. Но сейчас он удалён с сайта MS.
У меня в тестовой WinXP SP3 эта библиотека есть, прикладываю её к тикету, попробуйте положить в папку с SAS.
Ну и я бы рекомендовал вам обновить винду до SP3. |
|
|
(0019440)
|
zed
|
14-11-2019 17:29
|
|
Добавил поддержку прокси. |
|
|
(0019443)
|
zed
|
15-11-2019 10:43
|
|
Добавил в гуй возможность выбора какую качалку использовать и немного реорганизовал настройки прокси.
Названия Network engine и используемых библиотек не переводил, т.к. пока не уверен, что выбрано удачные названия. Может кто-то предложит что-то другое?
Саму библиотеку libcurl пока в ночную версию не добавил, будет чуть позже.
На этом, можно сказать, что всё что я планировал сделать, сделано. Тикет пока не закрываю, на случай если вдруг всплывут неожиданные косяки. |
|
|
(0019448)
|
Tolik
|
17-11-2019 05:27
|
|
> немного реорганизовал настройки прокси
Это в какой версии? В версии 15/11 вроде не изменились, а новее пока нет.
SOCKS прокси через curl не работает.
И надо нормально сделать настройку SOCKS, а то сейчас приходится вводить нетривиальную строку, например, socks=localhost:6262
Эта строка в версии 15/11 работает только через Wininet.
Переключалка Network engine работает, название годится. |
|
|
(0019449)
|
zed
|
17-11-2019 06:58
|
|
Если есть переключалка, то и прокси будет.
В curl протокол прокси надо вводить в стандартном виде,а не через равно. Т.е. так: socks5://127.0.0.1:1025 |
|
|
(0019450)
|
Tolik
|
17-11-2019 12:53
|
|
Да, с такой строкой работает: socks5://localhost:6262
Тем более, хотелось бы настройку через ГУИ. Или, если лень, то хоть подсказку там.
Ещё заметил: при переключении с ручной настройки прокси на системную пишет, что надо перезапустить САС. На самом деле не надо (по крайней мере, с curl). |
|
|
(0019451)
|
zed
|
17-11-2019 18:07
|
|
Да, можно сделать настройку и, кстати, WinInet поддерживает 2 типа прокси http и socks4, а curl умеет целых 6: http, https, socks4, socks4a, socks5, socks5h. |
|