PUT поток 0 байт

Я использую Windows Explorer для тестирования реализации WebDAV, которую я адаптирую к нашей системе. Реализация использует IIS Express и запускается Visual Studio 2013. Я отключил требование проводника Windows для SSL с WebDAV, чтобы проверить базовую аутентификацию (которая работает).

У меня возникла проблема с методом Write реализации DavFile. Я подключаюсь к веб-папке, перехожу к подпапке, затем пытаюсь скопировать файл JPG из папки на жестком диске моего компьютера в подпапку WebDAV (используя проводник Windows).

Попытка скопировать файл (854 КБ) не удалась. Когда я устанавливаю точку останова, я замечаю, что поток «сегмент» (один из входных параметров метода «записи» показывает длину 0 (ноль) байтов.

Любые советы о том, как отладить эту проблему? Какова наиболее вероятная причина 0 байтов в потоке?


person Eric Kauffman    schedule 08.07.2014    source источник


Ответы (1)


Вот несколько идей о том, как понять, что происходит не так:

  1. Просмотрите журнал сервера на наличие исключений. По умолчанию он называется WebDAVLog.txt и находится в папке \App_Data\WebDAV\Logs\. Есть ли в нем исключения? Проверьте журнал вашего сервера и убедитесь, что все запросы были успешными.

  2. Изучите запросы WebDAV с помощью инструмента Fiddler или любого другого прокси-сервера отладки. Несмотря на то, что все запросы, достигшие ядра сервера WebDAV, регистрируются, если запрос завершился ошибкой до попадания в ядро, вы не увидите его в журнале. Обычно это происходит, если запрос не прошел на этапе аутентификации.

    Обратите внимание, что для захвата запросов с помощью Fiddler на «localhost» вы должны использовать «localhost.fiddler» вместо «localhost» при подключении к серверу, например: http://localhost.fiddler:1234.

  3. Исключите любые проблемы на стороне клиента. Наконец, могут возникнуть проблемы с клиентским программным обеспечением, которое вы используете, в том числе с Microsoft miniredirector. Попробуйте зайти на сервер с любой другой машины. Чтобы понять, на стороне клиента или сервера проблема, попробуйте также воспроизвести проблему на ajaxbrowser.com.

Вы можете опубликовать часть журнала WebDAVLog.txt или fiddler здесь или отправить его в IT Hit, это может дать представление о том, что не так.

person IT Hit WebDAV    schedule 15.07.2014
comment
В настоящее время я работаю над интеграционными тестами, чтобы убедиться, что все в порядке. Затем я пройдусь по пунктам с 1 по 3 выше. - person Eric Kauffman; 16.07.2014