Cloud-Clientbibliotheken in Cloud Code verwenden
Auf dieser Seite werden die ersten Schritte mit Cloud-Clientbibliotheken und Cloud Code beschrieben. Sie richten eine neue Kubernetes-Anwendung mit einer Hello World-Beispielanwendung ein und aktualisieren die Anwendung dann so, dass die Antwort mit der Cloud Translation API ins Spanische übersetzt wird.
Hinweise
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Google Kubernetes Engine and Cloud Translation APIs.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Google Kubernetes Engine and Cloud Translation APIs.
- Installieren Sie Git, damit Cloud Code Git-Vorgänge ausführen kann, z. B. das Klonen eines Beispiels.
- Installieren Sie das Cloud Code-Plug-in. falls noch nicht geschehen.
Anwendung erstellen
- Führen Sie in der Befehlspalette (
Cmd
/Ctrl
+Shift
+P
) den Befehl Cloud Code: Neue Anwendung aus, wählen Sie Kubernetes-Anwendung und dann eine Hello World-Anwendung in der gewünschten Sprache aus. Wählen Sie beispielsweise Node.js: Hello World aus, um eine Hello World-Startanwendung in Node.js zu erstellen. - Speichern Sie die neue Anwendung. In einer Benachrichtigung wird bestätigt, dass Ihre Anwendung erstellt wurde, und es wird ein in einem neuen Fenster geöffnet.
Anmeldedaten einrichten
Klicken Sie auf Terminal > Neues Terminal, um ein Terminal zu öffnen.
Erstellen Sie ein Dienstkonto zur Authentifizierung Ihrer API-Anfragen:
gcloud iam service-accounts create \ translation-quickstart \ --project PROJECT_ID
Weisen Sie dem Dienstkonto die Rolle „Cloud Translation API-Nutzer“ zu:
gcloud projects \ add-iam-policy-binding \ PROJECT_ID \ --member='serviceAccount:translation-quickstart@PROJECT_ID.iam.gserviceaccount.com' \ --role='roles/cloudtranslate.user'
Erstellen Sie einen Dienstkontoschlüssel:
gcloud iam service-accounts keys \ create key.json --iam-account \ translation-quickstart@PROJECT_ID.iam.gserviceaccount.com
Legen Sie den Schlüssel als Standardanmeldedaten fest:
export \ GOOGLE_APPLICATION_CREDENTIALS=key.json
Cloud Translation API über Ihre Anwendung aufrufen
Go
Installieren Sie die Cloud-Clientbibliotheken für die Cloud Translation API:
- Klicken Sie auf Terminal > Neues Terminal, um ein Terminal zu öffnen.
Führen Sie dazu diesen Befehl aus:
go get cloud.google.com/go/translate/apiv3
Erstellen Sie eine
app.go
-Datei.Öffnen Sie
app.go
und fügen Sie den Paketnamen, die Importe und das Grundgerüst der Anwendung hinzu:package main import ( "context" "fmt" translate "cloud.google.com/go/translate/apiv3" translatepb "google.golang.org/genproto/googleapis/cloud/translate/v3" ) func translateText(w io.Writer, projectID string, sourceLang string, targetLang string, text string) error { } func main() { }
Fügen Sie der Funktion
translateText()
den folgenden Code hinzu, der den angegebenen Text übersetzt. Wählen Sie Datei > Speichern aus, um den Code neu zu formatieren:ctx := context.Background() client, err := translate.NewTranslationClient(ctx) if err != nil { return fmt.Errorf("NewTranslationClient: %v", err) } defer client.Close() req := &translatepb.TranslateTextRequest{ Parent: fmt.Sprintf("projects/%s/locations/global", projectID), SourceLanguageCode: sourceLang, TargetLanguageCode: targetLang, MimeType: "text/plain", // Mime types: "text/plain", "text/html" Contents: []string{text}, } resp, err := client.TranslateText(ctx, req) if err != nil { return fmt.Errorf("TranslateText: %v", err) } // Display the translation for each input text provided for _, translation := range resp.GetTranslations() { fmt.Fprintf(w, "Translated text: %v\n", translation.GetTranslatedText()) } return nil
Rufen Sie in Ihrer
main()
-FunktiontranslateText()
auf. Die folgenden Parameterwerte übersetzen die englische Sprache ins Spanische:projectID := "<var>PROJECT_ID</var>" sourceLang := "en-US" targetLang := "es" text := "Text to translate" err := translateText(os.Stdout, projectID, sourceLang, targetLang, text) if err != nil { fmt.Print(err) }
Führen Sie die Anwendung über das Terminal aus.
go run app.go
Java
Öffnen Sie
pom.xml
und fügen Sie demdependencies
das folgende Code-Snippet hinzu: Abschnitt:<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11</version> <scope>test</scope> </dependency> <dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-translate</artifactId> </dependency> </dependencies>
Fügen Sie dann in der Datei
pom.xml
dem AbschnittdependencyManagement
das folgende Code-Snippet hinzu:<dependencyManagement> <dependencies> <dependency> <groupId>com.google.cloud</groupId> <artifactId>libraries-bom</artifactId> <version>26.39.0</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
Achten Sie darauf, dass Sie die neueste Version der von Google Cloud unterstützten Bibliotheken verwenden. Eine Liste der Versionen finden Sie unter Von Google Cloud unterstützte Bibliotheken.
Wenn Sie gefragt werden, ob Sie den Java-Klassenpfad/die Java-Konfiguration synchronisieren möchten, klicken Sie auf Immer.
Erstellen Sie eine Datei mit dem Namen
app.java
.Fügen Sie in
app.java
die folgenden Importe nach dem Paket ein: Definition:import com.google.cloud.translate.v3.LocationName; import com.google.cloud.translate.v3.TranslateTextRequest; import com.google.cloud.translate.v3.TranslateTextResponse; import com.google.cloud.translate.v3.Translation; import com.google.cloud.translate.v3.TranslationServiceClient; import java.io.IOException;
Fügen Sie der Klasse
App
die MethodetranslateText()
hinzu. Diese Methode legt Variablen fest und übergibt sie an eine überlastetetranslateText()
-Methode. Die folgenden Parameterwerte übersetzen die englische Sprache ins Spanische:public static void translateText() throws IOException { String projectId = "<walkthrough-project-id/>"; String targetLanguage = "es"; String text = "Hello world!"; translateText(projectId, targetLanguage, text); }
Fügen Sie eine überlastete
translateText()
-Methode hinzu. Bei dieser Methode wird Text in die Zielsprache übersetzt.public static void translateText(String projectId, String targetLanguage, String text) throws IOException { try (TranslationServiceClient client = TranslationServiceClient.create()) { LocationName parent = LocationName.of(projectId, "global"); TranslateTextRequest request = TranslateTextRequest.newBuilder() .setParent(parent.toString()) .setMimeType("text/plain") .setTargetLanguageCode(targetLanguage) .addContents(text) .build(); TranslateTextResponse response = client.translateText(request); // Display the translation for each input text provided for (Translation translation : response.getTranslationsList()) { System.out.printf("Translated text: %s\n", translation.getTranslatedText()); } } }
Ersetzen Sie die print-Anweisung in
main
durch einen Aufruf vontranslateText()
:try { translateText(); } catch (IOException e) { e.printStackTrace(); }
Node.js
Installieren Sie die Cloud-Clientbibliotheken für die Cloud Translation API:
- Klicken Sie auf . Cloud Code und maximieren Sie dann Cloud APIs Explorer.
- Maximieren Sie Cloud AI und klicken Sie dann auf Cloud Translation API.
- Klicken Sie zum Installieren der Clientbibliothek auf NodeJS und dann auf play_arrow Im Terminal ausführen.
Erstellen Sie in Ihrem Projekt eine
app.js
-Datei.app.js
öffnen und importieren Sie die Translation-Clientbibliothek am Anfang der Datei:const {TranslationServiceClient} = require('@google-cloud/translate');
Erstellen Sie einen Translation API-Client und fügen Sie Variablen für Ihre Projekt-ID hinzu. Standort und den Text, den Sie übersetzen möchten:
// Instantiates a client const translationClient = new TranslationServiceClient(); const projectId = 'PROJECT_ID'; const location = 'global'; const text = 'Hello, world!';
Fügen Sie die folgende
async
-Funktion hinzu, die die Sprache IhresHello, world!
-Texts erkennt und den Text ins Spanische übersetzt:async function translateText() { // Construct request const request = { parent: `projects/PROJECT_ID/locations/LOCATION`, contents: [text], mimeType: 'text/plain', // mime types: text/plain, text/html sourceLanguageCode: 'en', targetLanguageCode: 'es', }; // Run request const [response] = await translationClient.translateText(request); for (const translation of response.translations) { console.log(`Translation: ${translation.translatedText}`); } }
Rufen Sie am Ende der Datei
app.js
translateText()
auf:translateText();
Öffnen Sie zum Ausführen der Anwendung die Befehlspalette (drücken Sie
Ctrl
/Cmd
+Shift
+P
) und dann ausführen Cloud Code: In Kubernetes ausführenNachdem die Anwendung bereitgestellt wurde, können Sie den laufenden Dienst anzeigen, indem Sie die Die in der WebView angezeigte URL.
Python
Installieren Sie die Cloud-Clientbibliotheken für die Cloud Translation API:
- Klicken Sie auf . Cloud Code und maximieren Sie dann Cloud APIs Explorer.
- Maximieren Sie Cloud AI und klicken Sie dann auf Cloud Translation API.
- Klicken Sie auf Python und dann auf
play_arrow
Im Terminal ausführen
Hinweis: Wenn Sie ein Linux-basiertes Betriebssystem verwenden, einschließlich Chromebook, ersetzen Sie im Befehlpip
durchpip3
. Wenn Sie einen Mac verwenden, ändern Sie den Befehl inpip3
und fügen Sie das Flag--user
hinzu.
Erstellen Sie in Ihrem Projekt eine
app.py
-Datei.Importieren Sie in
app.py
die Clientbibliothek am Anfang der Datei:from google.cloud import translate
Fügen Sie die Funktion
translate_text
hinzu. Initialisiert einen Client für die Interaktion Cloud Translation APIdef translate_text(text="Hello, world!", project_id="PROJECT_ID"): client = translate.TranslationServiceClient() location = "global" parent = "projects/PROJECT_ID/locations/LOCATION"
Um Text aus dem Englischen ins Spanische zu übersetzen und das Ergebnis auszudrucken,
translate_text
-Funktion hinzufügen, fügen Sie der Cloud Translation API den folgenden Aufruf hinzu Cloud-Clientbibliotheken:response = client.translate_text( request={ "parent": parent, "contents": [text], "mime_type": "text/plain", "source_language_code": "en-US", "target_language_code": "es", } ) for translation in response.translations: print("Translated text: {}".format(translation.translated_text))
Rufen Sie am Ende von
app.py
translate_text()
auf.translate_text()
Öffnen Sie zum Ausführen der Anwendung die Befehlspalette (drücken Sie
Ctrl
/Cmd
+Shift
+P
) und dann ausführen Cloud Code: In Kubernetes ausführenNach der Bereitstellung können Sie den ausgeführten Dienst anzeigen, indem Sie die in der Webansicht angezeigte URL öffnen.
Bereinigen
Nachdem Sie Ihre Anwendung beendet haben, werden alle Kubernetes-Ressourcen, die während werden die Ausführungen automatisch gelöscht.
Damit Ihr Konto nicht für andere in dieser Kurzanleitung verwendete Ressourcen belastet wird, müssen Sie das Projekt oder den Cluster, den Sie erstellt haben, löschen, wenn Sie das Projekt wiederverwenden möchten.
So löschen Sie den Cluster:
- Im Kubernetes Explorer, halten Sie bei Ihrem Clusternamen an und klicken Sie dann auf open_in_new In der Google Cloud Console öffnen.
- Klicken Sie auf Löschen und dann noch einmal auf Löschen.
So löschen Sie Ihr Projekt und die zugehörigen Ressourcen, einschließlich der Cluster:
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.