Я реализовал очень минимальное доказательство концепции, поддерживающее часть протокола WebDAV
. Сюда входят протоколы OPTIONS
, PROPFIND
и GET
HTTP. Таким образом, встроенный клиент Windows WebDAV (в Windows 8.1) может открывать общий доступ к файлам и каталогам WebDAV
и просматривать их.Клиент Windows WebDAV с потоковой передачей/переадресацией
GET
реализация HTTP-глагол обеспечивает Accept-Ranges
(как байты), Content-Length
, Content-Type
и Transfer-Encoding
(как фрагментированные). При открытии большого видеофайла в браузере он начнет играть сразу, пока он загружает оставшееся содержимое. Похоже, что встроенный клиент WebDAV для Windows загружает весь файл во временное место до того, как медиа-плеер будет воспроизводить файл. Когда файл составляет 10 ГБ, это будет сосать.
Есть ли способ обеспечить поддержку, чтобы встроенный клиент WebDAV мог читать диапазоны байтов для потоковой передачи (я бы предположил, что просто нужно перевести, чтобы использовать Range
как-то ...)?
С точки зрения приложения Windows, HTTP не задействован, он просто видит файл на DAV, как файл на диске (поскольку он основан на драйвере ядра redirector mrxdav.sys, который маскирует реализацию HTTP: http: // blogs.iis.net/robert_mcmurray/webdav-redirector-registry-settings). Я сомневаюсь, что вы можете решить свою проблему, и да, это отстой. –
@SimonMourier Windows имеет худшую реализацию DAV когда-либо. –