Releases: ZZZConsulting/WebDavMailRuCloud
И было создано одно чтобы объединить их всех... и подставлен под всё это костыль...
К предыдущему релизу добавлен костыль для Яндекса:
- Сервер Яндекса при входе по логину и паролю может затребовать дополнительное подтверждение кодом из email или СМС,
и после этого обычно начинались танцы с бубном. Теперь бубен встроен.
Если не установлен запрет использования браузера для аутентификации (запрет по знаку!
перед логином),
делается вход через BrowserAuthenticator, пароль для подключения к BrowserAuthenticator берется изwdmrc.config
.
Если сервер Яндекса оказался удовлетворен, то потом все работает только с логином и паролем. - Эмулятор WebDAV при обращении к BrowserAuthenticator также передает заданные в
wdmrc.config
заголовки user-agent и sec-ch-ua, позволяя BrowserAuthenticator полностью мимикрировать под обычный браузер,
что уменьшает вероятность того, что сервер снова захочет повторить подтверждение по коду из email или СМС. - Если иногда заходите на свой Диск Яндекса через браузер, и браузер у Вас не Google Chrome, рекомендуется задать в
wdmrc.config
user-agent и sec-ch-ua от Вашего браузера, Яндекс при смене браузера может захотеть подтверждение кодом из email или СМС.
Дальше всё от предыдущего релиза
ВАЖНО!
Тестирование не покрывает многих аспектов и вариантов, поэтому перед тем, как применять новую версию к важным данным, убедитесь, что она их не портит! Любите и берегите свои данные! ;-)
Самые важные изменения с предыдущей версии:
- Поддержка .NET 8.0 (включая установку сервисом Windows).
- Для одновременного использования обоих облаков Cloud.Mail.Ru и Disk.Yandex.Ru больше нет необходимости в установке двух отдельных экземпляров, облако определяется при подключении.
- Для Cloud.Mail.Ru восстановлена работоспособность, потерянная почти год назад (возможно не для всех или не во всех случаях).
- Проверка показала, что Cloud.Mail.Ru дает прямое подключение по WebDAV, однако, эмулятор WebDAV с включенным кешированием может быть какое-то ускорение для клиентов, не имеющих самостоятельного кеширования - проверяйте у себя.
- Протокола YadWebV2 больше нет, теперь для Яндекса только один протокол - YadWeb, но с вариациями (про них ниже).
- Полностью переписано кеширование названий файлов и папок, значительно сокращено количество и длительность обращений к облачным серверам за названиями. После создания папок, загрузки файлов, удаления файлов больше не перечитываются папки целиком, только отдельные части, что существенно ускорило операции массовых загрузок или чисток файлов.
- От протокола YadWebV2 в протокол YadWeb перенесено ускоренное чтение больших папок, но только при браузерной аутентификации (в целях совместимости). Если количество записей в папке более порогового значения, чтение содержимого папки с сервера происходит в несколько параллельных запросов (максимально до 10), что в разы сокращает общее время на папках в десятки тысяч файлов.
- Еще одним отличием в протоколе YadWeb при браузерной аутентификации после интеграции в него протокола YadWebV2 стал механизм периодической проверки изменений в облаке сторонним приложением (например, самим пользователем через браузер). При обнаружении изменений весь кеш папок моментально сбрасывается чтобы получить обновление с сервера.
- Еще одно отличие в протоколе YadWeb при браузерной аутентификации и без нее в том, когда делается ожидание завершения удаления - в исходном протоколе YadWeb без браузерной аутентификации нет ожидания завершения удаления, оно делается при попытке чтения содержимого папки; в варианте с браузерной аутентификацией после каждой операции ожидается ее завершение в разумных пределах (15 минут).
- Для протокола YadWeb исправлена потенциальная проблема с паролями, содержащими символы типа
%
,"
,'
и др.
ВАЖНОЕ по части облака Яндекса (disk.yandex.ru)!
Выбор в настройках учетной записи опцией входа «обычный пароль»
и
Требование пройти дополнительную проверку при входе
(с кодом через СМС или email) не связаны. Это две разные сущности.
В случае, когда пользователь выбирает вход «по паролю и смс», подтверждение кодом будет при каждом входе. А когда «обычный пароль», то в случаях, когда проверка спровоцирована.
Проверку может «спровоцировать» полный выход из аккаунта
, использование разных браузеров
, разных устройств
, очистка cookie
, использование режима «Инкогнито»
и VPN
.
Если используете облако Яндекса с логином и паролем, попытка использования другой версии эмулятора может привести к невозможности дальнейшего входа только по логину и паролю!
И было создано одно чтобы объединить их всех...
ВАЖНО!
Тестирование не покрывает многих аспектов и вариантов, поэтому перед тем, как применять новую версию к важным данным, убедитесь, что она их не портит! Любите и берегите свои данные! ;-)
Самые важные изменения с предыдущей версии:
- Поддержка .NET 8.0 (включая установку сервисом Windows).
- Для одновременного использования обоих облаков Cloud.Mail.Ru и Disk.Yandex.Ru больше нет необходимости в установке двух отдельных экземпляров, облако определяется при подключении.
- Для Cloud.Mail.Ru восстановлена работоспособность, потерянная почти год назад (возможно не для всех или не во всех случаях).
- Проверка показала, что Cloud.Mail.Ru дает прямое подключение по WebDAV, однако, эмулятор WebDAV с включенным кешированием может быть какое-то ускорение для клиентов, не имеющих самостоятельного кеширования - проверяйте у себя.
- Протокола YadWebV2 больше нет, теперь для Яндекса только один протокол - YadWeb, но с вариациями (про них ниже).
- Полностью переписано кеширование названий файлов и папок, значительно сокращено количество и длительность обращений к облачным серверам за названиями. После создания папок, загрузки файлов, удаления файлов больше не перечитываются папки целиком, только отдельные части, что существенно ускорило операции массовых загрузок или чисток файлов.
- От протокола YadWebV2 в протокол YadWeb перенесено ускоренное чтение больших папок, но только при браузерной аутентификации (в целях совместимости). Если количество записей в папке более порогового значения, чтение содержимого папки с сервера происходит в несколько параллельных запросов (максимально до 10), что в разы сокращает общее время на папках в десятки тысяч файлов.
- Еще одним отличием в протоколе YadWeb при браузерной аутентификации после интеграции в него протокола YadWebV2 стал механизм периодической проверки изменений в облаке сторонним приложением (например, самим пользователем через браузер). При обнаружении изменений весь кеш папок моментально сбрасывается чтобы получить обновление с сервера.
- Еще одно отличие в протоколе YadWeb при браузерной аутентификации и без нее в том, когда делается ожидание завершения удаления - в исходном протоколе YadWeb без браузерной аутентификации нет ожидания завершения удаления, оно делается при попытке чтения содержимого папки; в варианте с браузерной аутентификацией после каждой операции ожидается ее завершение в разумных пределах (15 минут).
- Для протокола YadWeb исправлена потенциальная проблема с паролями, содержащими символы типа
%
,"
,'
и др.
ВАЖНОЕ по части облака Яндекса (disk.yandex.ru)!
Выбор в настройках учетной записи опцией входа «обычный пароль»
и
Требование пройти дополнительную проверку при входе
(с кодом через СМС или email) не связаны. Это две разные сущности.
В случае, когда пользователь выбирает вход «по паролю и смс», подтверждение кодом будет при каждом входе. А когда «обычный пароль», то в случаях, когда проверка спровоцирована.
Проверку может «спровоцировать» полный выход из аккаунта
, использование разных браузеров
, разных устройств
, очистка cookie
, использование режима «Инкогнито»
и VPN
.
Если используете облако Яндекса с логином и паролем, попытка использования другой версии эмулятора может привести к невозможности дальнейшего входа только по логину и паролю!
Протокол YadWeb работает - проверено
Подтверждена работоспособность протокола YadWeb данной сборки при входе на Яндекс.Диск с использованием только логина и пароля. В части протокола YadWeb данная сборка может использоваться
вместо Оригинальной сборки версии 1.13.6.1 и вместо Оригинальной с исправлением версии v1.13.6.1.Original+
Основные изменения:
- Для старого протокола YadWeb сделаны изменения, чтобы в большей степени соответствовать последней сборке оригинального форка.
- Добавлен параметр командной строки --disable-links, он выключает поддержку shared folders и прекращает обращения в облако за файлом /item.links.wdmrc.
- Устранена коллизия, когда параметр cache-listing задает время кеширования больше 5 минут, но кэш все равно принудительно очищается.
- Устранены некоторые ошибки типа null-reference.
- (для протокола YadWeb2) Методы аутентификации и определения объема свободного места разделены, как это и должно быть.
Оригинальная версия 1.13.6.1 с исправлением скачивания
Данная версия - это Оригинальная версия
https://github.com/yar229/WebDavMailRuCloud/releases/tag/1.13.6.1
с исправлением подвисания при скачивании с Яндекс.Диска.
Версия предназначена исключительно для тех, кто пользуется оригинальной версией.
Кроме исправления ошибки не содержит никаких других изменений (кроме сборки исполняемых модулей не другой машине - иногда это может влиять на результат).
Исправление подвисания при скачивании файлов с протоколом YadWeb
Если Вы на Windows не знаете какую версию выбрать, пробуйте WebDAVCloudMailRu-1.13.6.4-net7.0-windows.zip
Если при запуске скажет, что не хватает .NET 7.0, либо установите, либо используйте WebDAVCloudMailRu-1.13.6.4-net48.zip
Если у Вас не Windows, то, пожалуй, Вы и сами знаете что надо использовать.
Исправление в протоколе YadWebV2, сделанное в прошлом релизе, устранившее подвисание при скачивании с Яндекс.Диска, применено к протоколу YadWeb (который работает без использования YandexAuthBrowser).
На всякий случай напоминание про протокол YadWeb.
Яндекс периодически блокирует доступ к учетной записи, если вход осуществляется только по логину и паролю.
В сообщениях в консоли это выглядит примерно так:
https://passport.yandex.ru/registration-validations/auth/multi_step/commit_password
...
System.AggregateException: One or more errors occurred. --->
System.Net.WebException: The remote server returned an error: (403) Forbidden.
...
Наиболее часто подобное происходит в периоды, когда при входе на Диск отображается какая-нибудь реклама, связанная с акцией - заплатите за один год, получите еще один бесплатно, или - только до завтра скидка 50%, и т.д.
Наиболее распространенный способ починки - руками в браузере несколько раз войти в учетную запись и выйти.
Раза после 10-го - 20-го Яндекс успокаивается и через какое-то время перестает блокировать доступ. Или НЕ перестает. И в таком случае однократный вход с использованием протокола YadWebV2 с подтверждением кодом СМС, которого хватает несколько месяцев может стать более стабильной альтернативой. Но все зависит от того, кому как повезет.
v1.13.6.3
Исправлено:
- Перестали скачиваться файлы с Яндекс.Диска: операция подвисает и обрывается по таймауту.
- Клиент, не прочитав до конца файл, отключается. На почту приходит ошибка.
Аутентификация на Яндекс.Диск через браузер. Теперь вход возможен через QR и СМС!
WebDAVCloudMailRu-1.13.6.2-* - обновленная версия широко известной в узких кругах сборки yar229 с некоторыми изменениями.
Добавлен протокол YadWebV2 для доступа к Яндекс.Диску с аутентификацией через специальный браузер.
Специальный браузер в YandexAuthBrowser-net7.0-windows.zip, запускается с входом в Windows, сидит в трее, показывает окно браузера для входа в Яндекс.Диск по необходимости. После успешной аутентификации в Яндекс.Диске из браузера в сервис передаются куки, что позволяет работать с Яндекс.Диском представляюсь тем самым браузером, под которым был осуществлен вход.
Такой вход работает и с логином-паролем, и логином-паролем с СМС и QR-кодами.
Так же поддерживается несколько учетных записей.
Браузер только для net7.0-windows и только для протокола YadWebV2.
Сервис WebDAVCloudMailRu устанавливается сервисом Windows для net7.0-windows (новый алгоритм установки) и для net4.8-windows (предыдущий алгоритм установки).
Не используйте кэш для куки, если безоговорочно не доверяете доступу на ПК, и стирайте подпапки, созданные при работе YandexAuthBrowser!
И всех с наступающими праздниками!
Лето скоро!