GT ClassMethodsTranslation

downloadTranslatedFile

Référence de l’API pour la méthode downloadTranslatedFile permettant de télécharger les fichiers de traduction terminés

Vue d’ensemble

La méthode downloadTranslatedFile télécharge le contenu d’un fichier traduit sous forme de chaîne de caractères UTF‑8. Cette méthode permet de récupérer les traductions finalisées après leur traitement par la plateforme General Translation.

const gt = new GT({ projectId: 'your-project-id', apiKey: 'your-api-key' });

const content = await gt.downloadTranslatedFile({
  fileId: 'file-123',
  locale: 'es',
  versionId: 'version-456'
});

Statut de traduction : Cette méthode ne fonctionne qu’avec des traductions finalisées. Utilisez d’abord checkFileTranslations pour vérifier que les traductions sont finalisées avant de lancer le téléchargement.

Références

Paramètres

NomTypeDescription
fileFileInfoObjet d’information sur le fichier précisant quel fichier télécharger
options?DownloadFileOptionsConfiguration facultative de la requête de téléchargement

Structure FileInfo

NomTypeDescription
fileIdstringIdentifiant unique du fichier à télécharger
localestringParamètre de langue (locale) cible de la traduction à télécharger
versionId?stringID de version facultative pour le fichier

DownloadFileOptions

NomTypeDescription
timeout?numberDélai d’attente de la requête, en millisecondes

Valeur de retour

Promise<string> - Le contenu du fichier traduit sous forme de chaîne UTF-8.

La chaîne renvoyée contient le contenu du fichier traduit, au même format que le fichier source d’origine, avec tout le texte traduisible converti vers la locale cible.


Exemple

index.ts
// (1) Créer une instance GT
const targetLocales = ['es', 'fr', 'de'];
const gt = new GT({
  projectId: 'your-project-id',
  apiKey: 'your-api-key',
});

// (2) Charger le fichier
const fileUpload = {
  content: fileContents,
  fileName: filePath,
  fileFormat: 'JSON',
  locale: 'en',
};
const files = [ { source: fileUpload } ];
const { uploadedFiles } = await gt.uploadSourceFiles(
  files,
  { sourceLocale: 'en' }
);

// (3) Mettre en file d'attente la tâche de traduction du fichier
const enqueueResult = await gt.enqueueFiles(
  uploadedFiles,
  {
  sourceLocale: 'en',
  targetLocales: targetLocales,
});

// (4) Attendre la fin de toutes les traductions
let translationIds = [];
const statusQuery = Object.values(enqueueResult.data).flatMap(({fileName, versionId}) => {
  return targetLocales.map((locale) => ({locale, fileName, versionId}));
});
while (true) {
  const status = await gt.checkFileTranslations(statusQuery);
  if (status.translations.length === statusQuery.length) {
    translationIds = status.translations.map(translation => translation.id);
    break;
  }
  await new Promise(resolve => setTimeout(resolve, 1000));
}

// (5) Télécharger le fichier
const result = await Promise.all(
  translationIds.map(id => gt.downloadTranslatedFile(id))
);

Notes

  • Récupère le fichier téléchargé sous forme de chaîne UTF-8
  • Le fichier doit contenir une traduction complète pour le locale spécifié
  • Échoue si le fichier est introuvable

Prochaines étapes

Comment trouvez-vous ce guide ?

downloadTranslatedFile