Saya mendapatkan kesalahan 403 dengan program Delphi WebDAV saya atau klien CarotDAV berfungsi dengan baik
Saya memiliki IIS dan WebDAV di bawah windows 10. Sekarang saya mencoba komponen Delphi 10.4 Webdav dari / n Software yang berfungsi dengan baik untuk mengambil file tertentu melalui WebDAV dalam mode SSL (https). Tetapi ketika saya ingin mencoba untuk mendapatkan daftar Direktori saya mendapatkan HTTP ERROR 403. Di file log di server saya melihat bahwa entri PROPFIND memiliki catatan Kesalahan 403. Ini mirip dengan alasan itu: IIS-403 err
Apakah ada orang di sini yang punya ide di mana saya bisa menyelesaikan masalah ini. Terima kasih banyak.
Jawaban
Alasannya adalah: (Dijawab oleh Hugh Wright dari / n software)
Ada beberapa kemungkinan penyebab kesalahan ini. Pengguna sebelumnya yang memiliki kesalahan serupa memperbaikinya dengan mengubah properti kedalaman komponen WebDAV. Secara default, komponen WebDAV menggunakan kedalaman tak terhingga saat memanggil metode tertentu, termasuk FindProperties dan ListDirectory. Beberapa server tidak mendukung permintaan dengan kedalaman tak terbatas, dan mungkin mengembalikan kesalahan 403 saat permintaan dibuat.
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');
Saya dapat mengonfirmasi bahwa masalahnya adalah Properti Kedalaman. Secara default, CarotDAV menggunakan kedalaman 1 (Immediate Children), dan komponen kami tidak.