Aller au contenu principal

RFC 4918 - Extensions HTTP : Création et gestion de versions distribuées sur le Web (WebDAV)

Date de publication : juin 2007
Statut : Standards Track
Auteur : L. Dusseault (Ed.) (CommerceNet)
Rend obsolète : RFC 2518
Catégorie : Standards Track


Résumé (Abstract)

La création et la gestion de versions distribuées sur le Web (WebDAV, Web Distributed Authoring and Versioning) se compose d'un ensemble de méthodes, d'en-têtes et de types de contenu accessoires à HTTP/1.1 pour la gestion des propriétés de ressources (Resource Properties), la création et la gestion de collections de ressources (Resource Collections), la manipulation de l'espace de noms des URL (URL Namespace Manipulation) et le verrouillage des ressources (Resource Locking, pour éviter les conflits).

Le RFC 2518 a été publié en février 1999. Cette spécification rend obsolète le RFC 2518 avec des révisions mineures basées sur l'expérience d'interopérabilité.


Statut de ce mémo (Status of This Memo)

Ce document spécifie un protocole de la filière de normalisation Internet pour la communauté Internet et demande des discussions et des suggestions pour son amélioration. Veuillez vous référer à l'édition actuelle des « Standards officiels des protocoles Internet » (STD 1) pour connaître l'état de normalisation et le statut de ce protocole. La distribution de ce mémo est illimitée.


Copyright (C) The IETF Trust (2007).


Table des matières (Contents)

Sections principales

Annexes (Appendices)

  • Annexe A. Notes sur le traitement des éléments XML - Traduction en cours
  • Annexe B. Notes sur la compatibilité des clients HTTP - Traduction en cours
  • Annexe C. Le schéma 'opaquelocktoken' et les URI - Traduction en cours
  • Annexe D. Ressources lock-null - Traduction en cours
  • Annexe E. Guide pour les clients souhaitant s'authentifier - Traduction en cours
  • Annexe F. Résumé des modifications par rapport au RFC 2518 - Traduction en cours

Concepts fondamentaux de WebDAV

Fonctionnalités clés

WebDAV étend le protocole HTTP/1.1 avec les capacités fondamentales suivantes :

  1. Propriétés (Properties) : Ajouter, modifier et interroger les métadonnées des ressources Web
  2. Collections : Créer et gérer des structures hiérarchiques de ressources
  3. Verrouillage (Locking) : Prévenir les conflits d'édition concurrente, prenant en charge les verrous exclusifs et partagés
  4. Opérations d'espace de noms (Namespace Operations) : Copier et déplacer des ressources Web

Nouvelles méthodes HTTP

  • PROPFIND : Récupérer les propriétés d'une ressource
  • PROPPATCH : Modifier les propriétés d'une ressource
  • MKCOL : Créer une collection (similaire à la création d'un répertoire)
  • COPY : Copier une ressource ou une collection
  • MOVE : Déplacer ou renommer une ressource ou une collection
  • LOCK : Verrouiller une ressource pour éviter les conflits
  • UNLOCK : Déverrouiller une ressource

Nouveaux codes d'état HTTP

  • 207 Multi-Status : Réponse multi-état pour les opérations par lots
  • 422 Unprocessable Entity : La requête était bien formée mais contenait des erreurs sémantiques
  • 423 Locked : La ressource est verrouillée
  • 424 Failed Dependency : La requête a échoué en raison de l'échec d'une requête précédente
  • 507 Insufficient Storage : Espace de stockage insuffisant pour terminer la requête

Cas d'utilisation

  • Édition collaborative : Plusieurs utilisateurs éditant du contenu Web simultanément
  • Systèmes de gestion de contenu (CMS) : Gestion à distance du contenu de sites Web
  • Partage de fichiers : Téléchargement et téléversement de fichiers via le protocole HTTP
  • Stockage cloud : Implémentation de services de stockage de fichiers basés sur HTTP