Wofür wird die HTTP-Methode PROPFIND verwendet?


16

In meinem Serverzugriffsprotokoll wird eine Reihe von Zeilen angezeigt, die in derselben Sekunde nacheinander so ablaufen:

PROPFIND /images/flag.jpg HTTP/1.1  405 493 265    511    - LibreOffice
HEAD /images/flag.jpg HTTP/1.1      200 164 -      229    - LibreOffice
GET /images/flag.jpg HTTP/1.1       200 186 338166 338395 - LibreOffice

Durch das Kopieren von Bildern von der Website in ein LibreOffice-Dokument werden anscheinend diese Abfragen ausgelöst. Ich habe festgestellt, dass PROPFIND auf einer Microsoft-Website erwähnt wird , verstehe seine Verwendung aber immer noch nicht und warum nicht stattdessen nur ein einzelnes GET verwenden?

Antworten:


8

Aus Wikipedia:

Das Web Distributed Authoring and Versioning (WebDAV) ist eine Erweiterung des Hypertext Transfer Protocol (HTTP), das die Zusammenarbeit zwischen Benutzern bei der Bearbeitung und Verwaltung von Dokumenten und Dateien erleichtert, die auf World Wide Web-Servern gespeichert sind.

PROPFIND - wird verwendet, um als XML gespeicherte Eigenschaften von einer Webressource abzurufen. Es ist auch überladen, damit die Erfassungsstruktur (auch als Verzeichnishierarchie bezeichnet) eines fernen Systems abgerufen werden kann.


GET ruft die Ressource tatsächlich ab. HEAD ähnelt GET mit der Ausnahme, dass der Nachrichtentext nicht zurückgegeben wird. Das heißt, es werden die Datei-Header-Informationen und nicht die gesamte Ressource abgerufen.

Es scheint, dass PROPFIND sich von HEAD darin unterscheidet, dass als XML gespeicherte Eigenschaftsdaten im Nachrichtentext (des Pakets) zurückgegeben werden, anstatt zu versuchen, die gesamte Ressource zurückzugeben. OpenOffice- und Libre-Dokumente enthalten XML im Vergleich zu dem proprietären Format, das Microsoft und andere verwenden.

Möglicherweise löst die Verwendung von Libre mit Bildern, die von Ihrer Website verlinkt wurden, dies aus.


Können Sie die "Eigenschaften" und "Struktur" erläutern, die PROPFIND aus der HTTP-Anforderung erhalten soll PROPFIND /images/flag.jpg?
Fragenüberlauf

Ich habe keine Ahnung. Es tut uns leid. Offensichtlich ist die JPG-Datei im Binärformat. Ich schlage nicht vor, dass sich XML in Ihrer Bilddatei befindet. Wenn jedoch ein PROPFIND fehlschlägt, wird ein 404 zurückgegeben. Möglicherweise testet LibreOffice pauschal Ressourcen für XML-Header-Informationen, unabhängig vom Dateityp.
Closetnoc

Eine Möglichkeit, zu testen, ob es sich um LibreOffice handelt, besteht darin, eine neue einfache Datei mit einer Ressource auf Ihrer Website (vorzugsweise einem Bild) zu erstellen, die neu ist und einen eindeutigen Namen hat. Wenn Sie also eine Anforderung für diese Datei erhalten, wissen Sie, woher diese stammt von. Dann wissen Sie, dass diese Anfragen nicht böswillig sind. Überprüfen Sie andernfalls die IP-Adresse (oder den Domänennamen), um sicherzustellen, dass sie sich nicht in Ihrem Netzwerk befindet oder von jemandem, den Sie kennen. Wenn die Anfrage von einem unbekannten Ort kommt, blockieren Sie die IP-Adresse (oder den Domainnamen) und prüfen Sie, wer sich überhaupt beschwert. Das ist ein alter SA-Trick.
Closetnoc
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.