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
| Nom | Type | Description |
|---|---|---|
file | FileInfo | Objet d’information sur le fichier précisant quel fichier télécharger |
options? | DownloadFileOptions | Configuration facultative de la requête de téléchargement |
Structure FileInfo
| Nom | Type | Description |
|---|---|---|
fileId | string | Identifiant unique du fichier à télécharger |
locale | string | Paramètre de langue (locale) cible de la traduction à télécharger |
versionId? | string | ID de version facultative pour le fichier |
DownloadFileOptions
| Nom | Type | Description |
|---|---|---|
timeout? | number | Dé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
// (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
- Voir
checkFileTranslationspour vérifier l’état des traductions avant de télécharger - Voir
downloadFileBatchpour télécharger plusieurs files efficacement - Voir
uploadSourceFilespour le processus d’upload de files - Voir
enqueueFilespour lancer des jobs de traduction
Comment trouvez-vous ce guide ?