GT ClassMethodsTranslation

downloadTranslatedFile

Riferimento API per il metodo downloadTranslatedFile per scaricare i file di traduzione completati

Panoramica

Il metodo downloadTranslatedFile scarica il contenuto di un singolo file tradotto come stringa UTF-8. Questo metodo viene usato per recuperare le traduzioni completate dopo l’elaborazione sulla piattaforma 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'
});

Stato della traduzione: Questo metodo funziona solo con traduzioni completate. Usa prima checkFileTranslations per verificare che le traduzioni siano state completate prima di procedere con il download.

Riferimenti

Parametri

NomeTipoDescrizione
fileFileInfoOggetto con le informazioni sul file che specifica quale file scaricare
options?DownloadFileOptionsConfigurazione opzionale per la richiesta di download

Struttura FileInfo

NomeTipoDescrizione
fileIdstringIdentificatore univoco del file da scaricare
localestringLocale di destinazione della traduzione da scaricare
versionId?stringID versione facoltativo per il file

OpzioniDownloadFile

NomeTipoDescrizione
timeout?numberTempo di timeout della richiesta in millisecondi

Restituisce

Promise<string> - Il contenuto del file tradotto come stringa in UTF-8.

La stringa restituita contiene il contenuto del file tradotto nello stesso formato del file sorgente originale, con tutto il testo traducibile convertito nella lingua di destinazione.


Esempio

index.ts
// (1) Crea un'istanza di GT
const targetLocales = ['es', 'fr', 'de'];
const gt = new GT({
  projectId: 'ID del progetto',
  apiKey: 'la tua chiave API',
});

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

// (3) Accoda il job di traduzione del file
const enqueueResult = await gt.enqueueFiles(
  uploadedFiles,
  {
  sourceLocale: 'en',
  targetLocales: targetLocales,
});

// (4) Attendi il completamento di tutte le traduzioni
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) Scarica il file
const result = await Promise.all(
  translationIds.map(id => gt.downloadTranslatedFile(id))
);

Note

  • Recupera il file scaricato come stringa UTF-8
  • Il file deve avere una traduzione completa per la lingua/locale specificata
  • Genera un errore se il file non viene trovato

Prossimi passaggi

Come valuti questa guida?

downloadTranslatedFile