2017-12-12 4 views
2

Ich versuche, einen Webhook für Dialogflow in einer Action-On-Google bereitzustellen.Async/Warten auf Google Cloud

Dieser Webhook benutzt Async/Await, also benötigt er NodeJS 8.x.

Wenn ich "node --version" in meine Google Cloud-Konsole (die auf der Website cloud.google.com) eintippe, wird mir 8.5.0 als Version des Knotens angezeigt.

Aber wenn ich das Webhook-Skript über "gcloud beta functions deploy" deploye, bekomme ich einen "SyntaxError: Unexpected identifier" an der Stelle meines Skripts, wo das erste "await" verwendet wird.

Ist also async/awaward in Google Cloud deaktiviert, selbst wenn Knoten 8.5 verwendet wird?

Antwort

2

Google Cloud-Funktionen (aka Firebase-Funktionen) unterstützt nur Knoten 6.11.5 (Details siehe https://cloud.google.com/functions/docs/writing/). Daher können Sie nur Sprachfeatures verwenden, die bis zu dieser Knotenversion unterstützt werden.

+0

Und warum zeigt die Google Cloud-Konsole Version 8.5.0? Ist das anders als bei Google Cloud-Funktionen? – MHilgers

+0

Es ist, ja. Die Konsole ist im Grunde genommen eine kleine VM mit einigen installierten Tools, die Sie für die Entwicklung, das Scripting und die Interaktion mit GCP verwenden können. Google Cloud-Funktionen sind separate Sandbox-Funktionen, die im Maßstab ausgeführt werden, und verwenden daher eine ältere LTS-Version von Node.js. – elithrar

+0

Ok, thx elithrar! – MHilgers