Qu’est-ce que tus ?
tus est un protocole HTTP ouvert pour les téléversements de fichiers avec reprise. Un client crée ou découvre une ressource de téléversement, envoie des octets à partir de décalages connus et reprend à partir du décalage confirmé après une interruption.
Fonctionnement de tus
Le protocole tus représente un téléversement en cours sous forme de ressource HTTP avec une position en octets confirmée par le serveur. Un client n’ajoute des données qu’à cette position et peut interroger la ressource après une reconnexion, évitant ainsi de retransmettre les octets acceptés. Son fonctionnement de base est minimal, tandis que des extensions négociées ajoutent la création, les sommes de contrôle, l’expiration, la concaténation ou la longueur différée. Dans un flux de travail d’ingestion, tus sépare la gestion fiable de l’état du transfert des opérations ultérieures de validation, de transcodage et de publication.
Points clés
- Un client envoie une requête PATCH avec
Upload-Offset, et le serveur ne l’accepte que si cette valeur correspond à l’état stocké ; un conflit de décalage empêche l’ajout silencieux d’octets au mauvais endroit. - HEAD récupère le décalage actuel du serveur pour permettre à un client interrompu de reprendre, tandis que l’en-tête
Tus-Resumableidentifie la version du protocole attendue pour des requêtes et des réponses compatibles. - Les extensions facultatives de somme de contrôle et d’expiration répondent à des modes de défaillance différents : l’une détecte les blocs corrompus, tandis que l’autre indique aux clients qu’une ressource de téléversement inachevé peut cesser d’exister.
Quand tus est utile
Choisissez tus pour les téléversements volumineux ou les connexions peu fiables, lorsque recommencer un transfert entier serait coûteux. Les implémentations du client et du serveur doivent s’accorder sur les décalages et les extensions, sans quoi la reprise peut échouer.