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
| Nome | Tipo | Descrizione |
|---|---|---|
file | FileInfo | Oggetto con le informazioni sul file che specifica quale file scaricare |
options? | DownloadFileOptions | Configurazione opzionale per la richiesta di download |
Struttura FileInfo
| Nome | Tipo | Descrizione |
|---|---|---|
fileId | string | Identificatore univoco del file da scaricare |
locale | string | Locale di destinazione della traduzione da scaricare |
versionId? | string | ID versione facoltativo per il file |
OpzioniDownloadFile
| Nome | Tipo | Descrizione |
|---|---|---|
timeout? | number | Tempo 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
// (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
- Consulta
checkFileTranslationsper verificare lo stato delle traduzioni prima del download - Consulta
downloadFileBatchper scaricare più file in modo efficiente - Consulta
uploadSourceFilesper la procedura di caricamento dei file - Consulta
enqueueFilesper avviare i job di traduzione
Come valuti questa guida?