Translator: measureInputUsage() Methode

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.

Die measureInputUsage() Methode der Translator Schnittstelle gibt an, wie viel Eingabequote durch einen Übersetzungsvorgang für einen gegebenen Texteingang verbraucht werden würde.

Syntax

js
measureInputUsage(input)
measureInputUsage(input, options)

Parameter

input

Ein String, der den Eingangstext darstellt, für den Sie eine Eingabenutzungsmessung wünschen.

options Optional

Ein Objekt, das Konfigurationsoptionen für den measureInputUsage() Vorgang angibt. Mögliche Werte umfassen:

signal

Eine AbortSignal Objektinstanz, die es ermöglicht, den measureInputUsage() Vorgang über den zugehörigen AbortController abzubrechen.

Rückgabewert

Ein Promise, das mit einer Zahl erfüllt wird, die die Nutzung der inputQuota des gegebenen Eingangstexts angibt.

Diese Zahl ist implementationsabhängig; wenn sie kleiner als die inputQuota ist, kann der String übersetzt werden.

Ausnahmen

NotAllowedError DOMException

Wird ausgelöst, wenn die Nutzung der Translator API durch ein translator Permissions-Policy blockiert ist.

NotReadableError DOMException

Wird ausgelöst, wenn die Ausgabeübersetzung vom User-Agent gefiltert wurde, zum Beispiel, weil sie als schadhaft, ungenau oder unsinnig erkannt wurde.

UnknownError DOMException

Wird ausgelöst, wenn der measureInputUsage() Aufruf aus irgendeinem anderen Grund fehlschlug oder ein Grund, den der User-Agent nicht offenlegen wollte.

Beispiele

Überprüfen, ob genug Quote vorhanden ist

Im folgenden Code-Snippet erstellen wir eine neue Translator-Instanz mit create(), dann geben wir die gesamte Eingabequote über inputQuota und die Eingabequotennutzung für die Übersetzung eines bestimmten Textstrings über measureInputUsage() zurück.

Dann testen wir, ob die individuelle Eingabenutzung für diesen String größer als die insgesamt verfügbare Quote ist. Wenn ja, werfen wir einen entsprechenden Fehler; wenn nicht, beginnen wir mit der Übersetzung des Strings mit translate().

js
const translator = await Translator.create({
  sourceLanguage: "en",
  targetLanguage: "ja",
});

const totalInputQuota = translator.inputQuota;
const inputUsage = await translator.measureInputUsage(myTextString);

if (inputUsage > totalInputQuota) {
  throw new Error("Insufficient quota to translate.");
} else {
  console.log("Quota available to translate.");
  const translation = await translator.translate(myTextString);
  // ...
}

Spezifikationen

Specification
Translator and Language Detector APIs
# dom-translator-measureinputusage

Browser-Kompatibilität

Siehe auch