WebDAV: клиент Mini-Redirector - есть собственное (только для чтения?) Cookie-хранилище? - PullRequest
0 голосов
/ 17 октября 2011

Представьте себе этот сценарий: Web-сервер и WebDAV-сервер используют один и тот же cookie-домен. WebServer устанавливает некоторые файлы cookie для аутентификации.

При запуске WebDAV-сессии через специальную ссылку на веб-сервере, Мини-редиректор WIN7 Microsoft может читать куки устанавливается веб-сервером нормально и запускает WebDAV-сессию на WebDAV-сервере, использующем этот cookie.

Но после первого вызова DAV, cookie, похоже, только для чтения на DAV-сервер и мини-перенаправитель.

  1. DAV-сервер не может обновить этот файл cookie
  2. DAV-сервер не может удалить (срок действия которого истек в прошлом) cookie
  3. Мини-редиректор продолжает отправлять старые значения (даже если веб-сервер обновил свои значения между)

Кто-нибудь получил информацию

  1. где мини-редиректор хранит свои куки
  2. как избежать такого поведения?

Спасибо, Карл

1 Ответ

0 голосов
/ 26 июня 2012

У меня была похожая проблема.На клиенте вы должны знать, когда сервер обновляет куки.Когда вы знаете, что сервер может сбросить cookie, вызовите wnetcancelconnection2 и очистите существующее соединение webdav, а затем вызовите wnetaddconnection2, чтобы снова создать соединение.Но дайте некоторое время между этими двумя вызовами, по крайней мере, минуту, я думаю, это займет некоторое время, чтобы очистить существующий кеш.

В моем приложении, когда я знал, что сервер отключается или мое приложение выходит или собирается запроситьдля нового сеанса я вызываю wnetcancelconnection2 и wnetaddconnection2.Это сработало для меня.Надеюсь, это поможет.

...