Ich habe einen sehr minimalen Proof-of-Concept implementiert, der einen Teil des WebDAV
Protokolls unterstützt. Dazu gehören die HTTP-Verben OPTIONS
, PROPFIND
und GET
. Der integrierte Windows WebDAV-Client (unter Windows 8.1) kann daher die Freigabe WebDAV
öffnen, Dateien und Verzeichnisse auflisten und durch diese navigieren.Windows WebDAV Client mit Streaming/chunked Übertragung
Die GET
HTTP Verb Implementierung stellt die Accept-Ranges
(als Bytes), Content-Length
, Content-Type
und Transfer-Encoding
(als chunked). Wenn Sie eine große Videodatei in einem Browser öffnen, wird sie sofort abgespielt, während der restliche Inhalt heruntergeladen wird. Der integrierte WebDAV-Client von Windows scheint die gesamte Datei an einen temporären Speicherort herunterzuladen, bevor ein Mediaplayer die Datei abspielen kann. Wenn eine Datei 10 GB groß ist, wird das sehr schlecht.
Gibt es eine Möglichkeit, Unterstützung bereitzustellen, damit der integrierte WebDAV-Client Bereiche von Bytes für Streaming-Zwecke lesen kann (ich würde mir vorstellen, dass es nur übersetzt werden muss, um Range
irgendwie zu verwenden ...)?
Aus Sicht der Windows-App ist kein HTTP involviert, es wird nur eine Datei in DAV wie eine Datei auf einem Datenträger angezeigt (weil sie auf einem Redirector-Kerneltreiber mrxdav.sys basiert, der die HTTP-Implementierung maskiert: http: // blogs.iis.net/robert_mcmurray/webdav-redirector-registry-settings). Ich bezweifle, dass du dein Problem lösen kannst und ja, es ist scheiße. –
@SimonMourier Windows hat die schlechteste DAV-Implementierung aller Zeiten. –