translateMany
API-Referenz zur GT-Methode translateMany für Batch-Übersetzungen
Überblick
Die Methode translateMany übersetzt mehrere Inhalte effizient in einer einzigen API-Anfrage.
Sie ist für die Stapelverarbeitung optimiert und bietet eine bessere Leistung als mehrere einzelne Aufrufe von translate.
const gt = new GT({
  apiKey: 'your-api-key',
  projectId: 'your-project-id'
});
const result = await gt.translateMany([
  { source: 'Hello, world!' },
  { source: 'Welcome to our app' },
  { source: 'Click here to continue' }
], { targetLocale: 'es' });Referenzen
Parameter
Prop
Type
Parameterbeschreibung
| Parameter | Beschreibung | 
|---|---|
| sources | Array von Entry-Objekten mit Quellinhalt und optionalen Metadaten pro Eintrag | 
| globalMetadata | Globale Metadaten, die auf alle Einträge angewendet werden, einschließlich des erforderlichen targetLocale | 
Entry-Objektstruktur
Jedes Entry im Array sources kann Folgendes enthalten:
interface Entry {
  source: Content;           // Der zu übersetzende Inhalt
  targetLocale?: string;     // Globale Ziel-Locale überschreiben
  context?: string;          // Übersetzungskontext für diesen Eintrag
  tags?: string[];          // Tags zur Kategorisierung
  // ... andere EntryMetadata-Eigenschaften
}Rückgabewerte
Promise<TranslateManyResult>Das Ergebnis enthält übersetzte Einträge sowie etwaige Fehlerinformationen:
interface TranslateManyResult {
  translations: Array<TranslationResult | TranslationError>;
  metadata: {
    totalRequests: number;
    successCount: number;
    errorCount: number;
    processingTime: number;
  };
}Verhalten
Globale vs. eintragsbezogene Metadaten
- Globale Metadaten gelten standardmäßig für alle Entries
- Eintragsbezogene Metadaten überschreiben globale Einstellungen für bestimmte Entries
- Die Ziel-locale kann pro Entry überschrieben werden
Strategie zur Fehlerbehandlung
- Einzelne Übersetzungsfehler stoppen nicht den gesamten Auftrag
- Jedes Ergebnis signalisiert unabhängig voneinander Erfolg oder Fehlermeldung
- Teilerfolgsszenarien werden vollständig unterstützt
Locale-Auflösung
- Die globale Ziel-Locale wird standardmäßig für alle Entries verwendet
- Ziel-Locales pro Entry überschreiben die globale Einstellung
- Alle Locales werden über ein benutzerdefiniertes Mapping aufgelöst, sofern konfiguriert
Beispiele
const menuItems = await gt.translateMany([
  { source: 'Home' },
  { source: 'About' },
  { source: 'Products' },
  { source: 'Contact' }
], {
  targetLocale: 'fr',
  context: 'Navigationsmenü-Elemente'
});
menuItems.translations.forEach((result, index) => {
  if ('translation' in result) {
    console.log(`Element ${index}: ${result.translation}`);
  } else {
    console.error(`Element ${index} fehlgeschlagen: ${result.error}`);
  }
});Hinweise
- Übersetzt mehrere Elemente in einer einzigen API-Anfrage
- Übersetzungsfehler in einem Entry beeinträchtigen die übrigen nicht
- Die Ergebnisse behalten die gleiche Reihenfolge wie die Eingabe-Entries
- Globale Metadaten werden mit Entry-spezifischen Metadaten zusammengeführt (Entry-spezifische haben Vorrang)
Nächste Schritte
- Erfahren Sie mehr über Einzelübersetzungen mit translate
- Erkunden Sie die Typen Entry und EntryMetadata
- Verstehen Sie die Struktur von TranslateManyResult
Wie ist dieser Leitfaden?

