Transloadit
Tarifs
  • Téléversements de fichiers
  • Importation de fichiers
  • Traitement par lots (English)
  • Encodage vidéo
  • Encodage audio
  • Traitement d’images
  • Traitement de documents
  • Intelligence artificielle
  • Filtrage et sécurité des fichiers
  • Catalogage de médias
  • Compression de fichiers
  • Évaluation de code
  • Exportation de fichiers
  • Smart CDN
  • Voir tous les services
  • Explorer les intégrations (English)
  • Explorer les démos interactives (English)
  • Uppy
  • TransloaditKit
  • SDK Android
  • SDK Node.js
  • SDK Python
  • SDK Ruby
  • SDK Go
  • SDK Java
  • SDK PHP
  • Zapier
  • Serveur MCP
  • Transloadit CLI (English)
  • Terraform
  • Essentiels
  • Bonnes pratiques (English)
  • FAQ
  • Robots (English)
  • API
  • Formats (English)
  • Créer votre première application
  • À propos de Transloadit
  • Comparatifs (English)
  • Projets open source
  • Témoignages
  • Carrières (English)
  • Sécurité (English)
  • Articles (English)
  • Actus dev (English)
  • Astuces dev
  • Presse (English)
  • Recherche (English)
  • Études de cas (English)
  • Solutions (English)
  • Guides (English)
  • Glossaire (English)
  • Juridique (English)
  • Outils (English)
  • Aider Coursera à apporter l’éducation à des millions de personnes à travers le monde (English)
  • Support Transloadit
  • Support open source
  • Accord de niveau de service (English)
EssentielsRobotsEN (English)FAQAPIFormatsEN (English)Bonnes pratiquesEN (English)
Premiers pas
  • Vue d’ensemble
  • Ma première application
  • Saving result filesEN (English)
Sujets
  • Assembly InstructionsEN (English)
  • Assembly VariablesEN (English)
  • Dynamic EvaluationEN (English)
  • TemplatesEN (English)
  • WebhooksEN (English)
  • Third party CredentialsEN (English)
  • Builtin TemplatesEN (English)
  • Resize StrategiesEN (English)
  • Assembly Execution ProgressEN (English)
  • WorkspacesEN (English)
  • AI AgentsEN (English)
  • Advanced use ParameterEN (English)
  • The ignore_errors ParameterEN (English)
Kits de développement logiciel
  • Vue d’ensemble
  • SDK Android
  • Navigateurs
  • Convex
  • cURL
  • SDK Go
  • SDK Java
  • Serveur MCP
  • Formulaire multipart
  • SDK Node.js
  • SDK PHP
  • SDK Python
  • SDK Ruby
  • Terraform
  • TransloaditKit
  • Intégration Zapier
Migration
  • Migrate from Cloudinary to TransloaditEN (English)
  • Migrate from Uploadcare to TransloaditEN (English)
  • Migrate from Mux to TransloaditEN (English)
  • Migrate from Filestack to TransloaditEN (English)

Uppy, l’outil de téléversement de fichiers

transloadit/uppy⁠

Uppy⁠ est un outil de téléversement de fichiers open source pour navigateurs web, créé par Transloadit. Avec plus de 31 000 étoiles sur GitHub, c’est l’outil de téléversement de fichiers n° 1 au monde. Grâce à la prise en charge intégrée de tus⁠, les téléversements peuvent résister aux coupures réseau, aux plantages du navigateur et aux sorties accidentelles de la page. C’est la méthode recommandée pour intégrer Transloadit aux navigateurs web.

Le plugin Transloadit⁠ pour Uppy vous aide à communiquer avec l’API Transloadit. Il peut être utilisé avec tous les autres plugins Uppy, par exemple l’interface modale de sélection de fichiers qui prend en charge les imports depuis des services tiers comme Instagram, l’intégration aux formulaires HTML, et plus encore.

Transloadit héberge tusd pour les téléversements avec reprise, ainsi que notre API d’encodage. Lorsque vous ajoutez des sources distantes, nous hébergeons également Companion pour vous.

Téléversement avec Uppy + Transloadit

Considérez Uppy comme l’expérience de téléversement dans le navigateur, et Transloadit comme le pipeline de traitement :

  1. Uppy collecte les fichiers (locaux, depuis la caméra ou depuis des sources distantes) et les téléverse avec la reprise de tus.
  2. Transloadit exécute votre Assembly (encodage, optimisation, analyse, stockage, etc.).
  3. La diffusion se fait depuis votre stockage, éventuellement via votre CDN ou celui de Transloadit (TLCDN).

Si vous avez seulement besoin du téléversement et du stockage, votre Assembly peut rester minimale (juste /upload/handle et un Step d’export). Si vous avez besoin de transformations, ajoutez les Robots pertinents en conservant la même expérience de téléversement : Uppy ne change pas.

Cela permet de proposer facilement une interface de téléversement unique et cohérente, tout en remplaçant ou en étendant les étapes de traitement à mesure que votre produit évolue.

Guides par framework

Commencez par le guide Uppy de référence⁠ pour la configuration du Template et de la signature côté serveur, puis passez à la section client correspondant à votre stack :

  • JavaScript⁠
  • React⁠
  • Next.js⁠
  • Vue⁠
  • Angular⁠

Le guide conserve l’Auth Secret Transloadit sur votre serveur, signe des options d’Assembly à courte durée de validité et ne transmet au navigateur que les valeurs requises par @uppy/transloadit. Votre serveur devrait choisir le Template autorisé et autoriser l’utilisateur actuel avant de signer ; il ne devrait pas signer des Instructions arbitraires fournies par le navigateur.

Exemple

À des fins de démonstration, nous présentons un scénario nominal qui utilise la détection de visages de Transloadit avec un sélecteur de fichiers et notre bundle CDN. Cette démo à copier-coller place délibérément une Auth Key et des Instructions non signées dans le navigateur. Utilisez-la uniquement avec des identifiants de test. En production, utilisez le flux de Template signé côté serveur décrit dans le guide par framework ci-dessus.

<!-- TEST/DEMO ONLY: uses test credentials and unsigned Instructions in the browser. -->
<!-- For production, use https://uppy.io/docs/guides/uppy-transloadit/ -->
<!-- This pulls Uppy from our CDN -->
<!-- For smaller self-hosted bundles, install Uppy and plugins manually: -->
<!-- npm i @uppy/core @uppy/dashboard @uppy/image-editor @uppy/remote-sources @uppy/transloadit -->
<link href="https://releases.transloadit.com/uppy/v5.2.4/uppy.min.css" rel="stylesheet" />
<button id="browse">Select Files</button>
<script type="module">
  import {
    Uppy,
    Dashboard,
    ImageEditor,
    RemoteSources,
    Transloadit,
  } from 'https://releases.transloadit.com/uppy/v5.2.4/uppy.min.mjs'
  const uppy = new Uppy()
    .use(Transloadit, {
      waitForEncoding: true,
      alwaysRunAssembly: true,
      assemblyOptions: {
        params: {
          // To avoid tampering, use Signature Authentication:
          // https://transloadit.com/docs/api/authentication/
          auth: {
            key: 'YOUR_TRANSLOADIT_KEY',
          },
          // It's often better to store encoding instructions in your account
          // and use a template_id instead of adding these steps inline
          steps: {
            ':original': {
              robot: '/upload/handle',
            },
            faces_detected: {
              use: ':original',
              robot: '/image/facedetect',
              crop: true,
              faces: 'max-confidence',
              format: 'preserve',
              crop_padding: '10%',
            },
            exported: {
              use: ['faces_detected', ':original'],
              robot: '/s3/store',
              credentials: 'demo_s3_credentials',
              url_prefix: 'https://demos.transloadit.com/',
            },
          },
        },
      },
    })
    .use(Dashboard, { trigger: '#browse' })
    .use(ImageEditor, { target: Dashboard })
    // Optional: only needed for remote sources. Local-device uploads do not need Companion.
    .use(RemoteSources, {
      companionUrl: 'https://api2.transloadit.com/companion',
      companionAllowedHosts: /\.transloadit\.com$/,
    })
    .on('complete', ({ transloadit }) => {
      // Due to waitForEncoding:true this is fired after encoding is done.
      // Alternatively, set waitForEncoding to false and provide a notify_url
      console.log(transloadit) // Array of Assembly Statuses
      transloadit.forEach((assembly) => {
        console.log(assembly.results) // Object of encoding results keyed by Step name
      })
    })
    .on('error', (error) => {
      console.error(error)
    })
</script>

Pour d’autres exemples, consultez examples/⁠ ou testez-les en ligne⁠. Uppy et Transloadit sont très polyvalents : vous avez peut-être un besoin différent, et il est probable que nous le prenions déjà en charge.

Documentation

Consultez la documentation complète du plugin Transloadit d’Uppy⁠, qui décrit l’API complète du plugin. Commencez par le guide par framework⁠ pour une intégration de bout en bout.

Page précédente ← SDK AndroidPage suivante Convex →
Contacter le support⁠

TransloaditVérification de l’état…

Produit

  • Services
  • Tarifs
  • Démos EN (English)
  • Outils EN (English)
  • Sécurité EN (English)
  • Support

Entreprise

  • À propos de Transloadit/Presse EN (English)
  • Blog EN (English)/Carrières EN (English)
  • Comparatifs EN (English)/Matrice de conformité EN (English)
  • Recherche EN (English)
  • Projets open source
  • Solutions EN (English)
  • Pionniers du web EN (English)

Documentation

  • Premiers pas
  • Transcodage EN (English)
  • FAQ
  • API
  • Guides EN (English)/Astuces dev
  • Formats pris en charge EN (English)

Plus

  • État de la plateforme⁠
  • Forum de la communauté⁠
  • StackOverflow⁠
  • Uppy
  • tus⁠

© 2009–2026 Transloadit-II GmbH

Confidentialité EN (English)Conditions EN (English)Mentions légales EN (English)
EnglishDeutschEspañolFrançaisPortuguês (Brasil)