Ich erhalte eine Fehlermeldung 403 mit meinem Delphi WebDAV-Programm, und der CarotDAV-Client funktioniert nicht einwandfrei

Aug 15 2020

Ich habe einen IIS und WebDAV unter Windows 10. Jetzt habe ich Delphi 10.4 Webdav-Komponente von / n Software ausprobiert, die gut zum Abrufen einer bestimmten Datei über WebDAV im SSL-Modus (https) geeignet ist. Wenn ich jedoch versuchen möchte, die Verzeichnisliste abzurufen, wird ein HTTP-FEHLER 403 angezeigt. In der Protokolldatei auf dem Server wird angezeigt, dass der Eintrag PROPFIND den Fehlerhinweis 403 enthält. Der Grund ist ähnlich: IIS-403 err

Hat jemand hier eine Idee, wo ich dieses Problem lösen könnte. Vielen Dank.

Antworten

WalterSchrabmair Aug 19 2020 at 11:33

Der Grund ist: (Beantwortet von Hugh Wright von / n Software)

Es gibt mehrere mögliche Ursachen für diesen Fehler. Frühere Benutzer mit ähnlichen Fehlern haben dies behoben, indem sie die Tiefeneigenschaft der WebDAV-Komponente geändert haben. Standardmäßig verwendet die WebDAV-Komponente beim Aufrufen bestimmter Methoden, einschließlich FindProperties und ListDirectory, eine Tiefe von unendlich. Einige Server unterstützen keine Anforderungen mit einer Tiefe von unendlich und geben möglicherweise einen 403-Fehler zurück, wenn die Anforderung gestellt wird.

 Webdav1.User := 'username';
 Webdav1.Password := 'password';
 Webdav1.AuthScheme := authBasic;
 Webdav1.Depth := dpImmediateChildren; // The server will operate on the

                                    // collection resource URI and all of

                                    // its immediate member resources (but

                                    // on none of their member resources).

 Webdav1.FindProperties('ResourceURI'); 

Ich konnte bestätigen, dass das Problem die Tiefeneigenschaft war. Standardmäßig verwendet CarotDAV eine Tiefe von 1 (Sofortige Kinder), unsere Komponente jedoch nicht.