Questa guida mostra come scrivere un servizio web Node.js in vengono eseguite nell'ambiente standard di App Engine. Per scoprire di più sul runtime Node.js e sul suo funzionamento, consulta Ambiente di runtime Node.js.
Prima di iniziare
Punti chiave
- Puoi utilizzare le dipendenze elencandole nel tuo
package.json
. Consulta: Specifica delle dipendenze per ulteriori informazioni. - App Engine avvia l'applicazione eseguendo
npm start
. - Il server deve ascoltare la porta specificata da
process.env.PORT
, una variabile di ambiente impostata dal runtime di App Engine. - È necessaria una
app.yaml
per eseguire il deployment del tuo servizio in App Engine.
Crea un server per ascoltare le richieste HTTP
Il cuore del tuo servizio web è il server HTTP. Il codice di esempio in questa guida utilizza il framework Express.js per gestire le richieste HTTP, ma puoi utilizzare un framework web di tua scelta.
Crea una nuova cartella denominata
my-nodejs-service
per il servizio Node.js.Vai alla cartella del terminale e crea un file
package.json
eseguendonpm init
.Aggiungi Express come dipendenza eseguendo:
npm install express
Verifica che la modalità Express sia visualizzata nell'elenco
dependencies
del filepackage.json
. Ecco un esempio:{ ... "dependencies": { "express": "^4.16.3" } ... }
Aggiungi uno script
start
al tuo filepackage.json
:"scripts": { "start": "node server.js" }
Crea un file denominato
server.js
nella stessa cartella e aggiungi quanto segue codice:
Si tratta di un server web molto semplice che risponde a tutte le richieste GET
al percorso radice ('/'
) con il testo "Un saluto da App Engine!" Nota le ultime quattro righe,
dove il server è impostato per ascoltare la porta specificata da process.env.PORT
,
una variabile di ambiente
impostata dal runtime di App Engine. Se il server non è impostato per l'ascolto
su questa porta, non riceverà richieste.
Tieni presente che se il criterio process.env.PORT
non è impostato, la porta 8080
viene utilizzata come
predefinito. Questo è necessario per testare l'app localmente, perchéprocess.env.PORT
non viene impostato durante le esecuzioni locali, ma solo quando
la tua app è in esecuzione su App Engine. Puoi utilizzare la porta che preferisci per i test, ma questa guida utilizza 8080
.
Esegui il server localmente
Per eseguire il server in locale:
Esegui
npm start
nel tuo terminale. In questo modo verrà eseguito il fileserver.js
.Indirizza il browser web a
http://localhost:8080
.
Dovresti vedere una pagina con il testo "Hello from App Engine!"
Crea il file app.yaml
Un file app.yaml
specifica le impostazioni per il servizio App Engine
dell'ambiente di runtime. Il deployment del servizio non verrà eseguito senza questo file.
Nella cartella
my-nodejs-service
, crea un file denominatoapp.yaml
.Aggiungi i seguenti contenuti:
Si tratta di un file di configurazione minimo che indica ad App Engine la versione del runtime Node.js. Il file
app.yaml
può anche specificare la rete impostazioni di scalabilità, opzioni di scalabilità e altro ancora. Per ulteriori informazioni, consulta Riferimentoapp.yaml
.
A questo punto, dovresti avere una struttura di file simile alla seguente:
my-nodejs-service/
app.yaml
package.json
server.js
Passaggi successivi
Ora che hai creato un semplice server web Node.js che ascolta la porta corretta e hai specificato il runtime in un file app.yaml
, puoi eseguire il deployment del servizio su App Engine.
Provalo
Se non conosci Google Cloud, crea un account per valutare le prestazioni di App Engine in scenari reali. I nuovi clienti ricevono anche 300 $ di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
Prova App Engine gratuitamente