View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0003422 | SAS.Планета | Хотелка / Feature request | 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 | ||
| Product Version | 181221 | ||||
| Target Version | 191221 | Fixed in Version | 191221 | ||
| Summary | 0003422: Добавить альтернативную реализацию IDownloader и IDownloaderAsync на основе libcurl | ||||
| Description | Реализация на основе WinInet перестала удовлетворять по нескольким причинам. Наиболее веские: - невозможно гибко ограничивать максимальное количество соединений с сервером (возможна только глобальная настройка для процесса) - повсеместный переход сервисов на https и окончание поддержки WinXP/Win7 со стороны Microsoft, т.е. библиотека wininet не будет обновляться и вероятно, рано или поздно перестанет понимать новые алгоритмы/протоколы шифрования. И тут может сильно помочь внешняя библиотека в составе SAS (естественно, до тех пор, пока и в ней не дропнут поддержку этих операционок). | ||||
| Additional Information | Заголовочники libcurl или даже обёртку можно взять, например, из mORMot https://github.com/synopse/mORMot/blob/master/SynCrtSock.pas#L2417 В том же mORMot, кстати говоря, есть унифицированные и взаимозаменяемые обёртки для WinInet, WinHttp и cUrl. Так что, вероятно, и нашу текущую обёртку WinInet от Alsinoe можно заменить на эту. | ||||
| Tags | No tags attached. | ||||
| Attached Files | |||||
| 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.Планета | Не работает "скачивание" локального файла из скрипта |
|
|
В ночной версии можно начинать тестировать. Чтобы заработала новая качалка в папку с SAS нужно распаковать архив с библиотекой libcurl: https://yadi.sk/d/FR_7U7bbbiEr6w Из известных недоделок: - игнорируются настройки прокси - игнорируются настройки максимального числа соединений с сервером Если в процессе тестирования возникнут какие-либо ошибки, надо взять вот этот exe: https://yadi.sk/d/1ZuSPnnUEV6sfw воспроизвести ошибку на нём, закрыть SAS и приложить сюда (или выложить на обменник) содержимое папки HttpLog, которая появится в корне программы. |
|
|
Супер! Спасибо! Заработал слой Росреестра и поиск по нему. Правда, слой отображается какими-то пятнами, надо подвигать туда-сюда, чтобы все тайлы скачались. Ошибка 503 вылезает иногда из кадастровой карты, а другие нормально работают, понаблюдаю ещё |
|
|
Ура заработал слой с земельными участками!!! Спасибо Огромное!!! |
|
|
> Ошибка 503 вылезает иногда из кадастровой карты Возможно не нравится слишком большое число одновременных подключений к серверу. Задайте в настройках карты 1. И кстати, оказывается, с лимитом числа соединений уже было всё в порядке. И есть улучшение по сравнению со старой качалкой: если у карты поставить лимит больше, чем задано глобально (на вкладке Настройка) число соединений увеличивается, как и задумано. А вот старая качалка не могла так - верхний лимит был всегда для всех карт задан этой глобальной настройкой. Сегодня ещё кое-что поправил в коде и по сути, в качалке осталось только разобраться с настройками прокси. Следом ещё надо будет провести небольшой рефакторинг, убрать дублирование кода и, возможно, добавить в настройки переключатель - какую качалку использовать. |
|
|
Поставил 1 подключение и даже паузу 1000 мс - все равно, один тайл скачивается, один - 503. Но это только Росреестр, с другими проблем нет, так что curl в порядке, я думаю. |
|
|
К сожалению, у меня эта долгожданная фича не работает — при запуске САС-а пишет: "Приложению не удалось запуститься, поскольку Normaliz.dll не был найден." :( Версия Nightly.191102.10051, ОС Windows XP SP2. После пары минут гугления нашел-таки эту dll-ку, совместимую с моей версией винды, проверил её на вирусню в VirusTotal, кинул её в C:\WINDOWS\system32 - ура, заработало! Прикрепил её. Я счастлив, что САС теперь умеет в https и на старушке XP! Спасибо огромное! |
|
|
Для SP2 раньше был пакет idndlpackage.exe, который устанавливал эту библиотеку. Но сейчас он удалён с сайта MS. У меня в тестовой WinXP SP3 эта библиотека есть, прикладываю её к тикету, попробуйте положить в папку с SAS. Ну и я бы рекомендовал вам обновить винду до SP3. |
|
|
Добавил поддержку прокси. |
|
|
Добавил в гуй возможность выбора какую качалку использовать и немного реорганизовал настройки прокси. Названия Network engine и используемых библиотек не переводил, т.к. пока не уверен, что выбрано удачные названия. Может кто-то предложит что-то другое? Саму библиотеку libcurl пока в ночную версию не добавил, будет чуть позже. На этом, можно сказать, что всё что я планировал сделать, сделано. Тикет пока не закрываю, на случай если вдруг всплывут неожиданные косяки. |
|
|
> немного реорганизовал настройки прокси Это в какой версии? В версии 15/11 вроде не изменились, а новее пока нет. SOCKS прокси через curl не работает. И надо нормально сделать настройку SOCKS, а то сейчас приходится вводить нетривиальную строку, например, socks=localhost:6262 Эта строка в версии 15/11 работает только через Wininet. Переключалка Network engine работает, название годится. |
|
|
Если есть переключалка, то и прокси будет. В curl протокол прокси надо вводить в стандартном виде,а не через равно. Т.е. так: socks5://127.0.0.1:1025 |
|
|
Да, с такой строкой работает: socks5://localhost:6262 Тем более, хотелось бы настройку через ГУИ. Или, если лень, то хоть подсказку там. Ещё заметил: при переключении с ручной настройки прокси на системную пишет, что надо перезапустить САС. На самом деле не надо (по крайней мере, с curl). |
|
|
Да, можно сделать настройку и, кстати, WinInet поддерживает 2 типа прокси http и socks4, а curl умеет целых 6: http, https, socks4, socks4a, socks5, socks5h. |
| 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 | |
| 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 |
| 08-08-2025 13:24 | zed | Category | Хотелка => Хотелка / Feature request |