Creare e distribuire un'applicazione Web Node.js usando Express in Servizi cloud di Azure (versione classica)
Importante
Servizi cloud (versione classica) è ora deprecato per tutti i clienti a partire dal 1° settembre 2024. Tutte le distribuzioni in esecuzione esistenti verranno arrestate e arrestate da Microsoft e i dati andranno persi definitivamente a partire da ottobre 2024. Le nuove distribuzioni devono usare il nuovo modello di distribuzione basato su Azure Resource Manager, Servizi cloud di Azure (supporto "Extended").
Node.js include un set minimo di funzionalità nel runtime core. Gli sviluppatori usano spesso moduli non Microsoft per offrire più funzionalità durante lo sviluppo di un'applicazione Node.js. In questa esercitazione si creerà una nuova applicazione usando il modulo Express che fornisce un framework MVC per la creazione di applicazioni Web Node.js.
In questo screenshot viene visualizzata l'applicazione completata:
Creazione di un progetto di servizio cloud
Nota
Per completare questa sezione, è necessario avere un'installazione funzionante di Node.js e di Azure SDK per Node.js per la piattaforma.
- Installare Azure SDK per Node.js: programma di installazione di Windows
Eseguire la procedura seguente per creare un nuovo progetto di servizio cloud denominato expressapp
:
Nel menu Start o nella schermata Start cercare Windows PowerShell. Fare infine clic con il pulsante destro del mouse su Windows PowerShell e scegliere Esegui come amministratore.
Passare alla directory c:node e immettere i comandi seguenti per creare una nuova soluzione denominata
expressapp
e un ruolo Web denominato WebRole1:PS C:\node> New-AzureServiceProject expressapp PS C:\Node\expressapp> Add-AzureNodeWebRole PS C:\Node\expressapp> Set-AzureServiceProjectRole WebRole1 Node 0.10.21
Nota
Per impostazione predefinita, in Add-AzureNodeWebRole viene usata una versione precedente di Node.js. La riga Set-AzureServiceProjectRole precedente indica ad Azure di usare v0.10.21 di Node. Si noti che i parametri fanno distinzione tra maiuscole e minuscole. È possibile verificare di aver selezionato la versione corretta di Node.js controllando la proprietà engines in WebRole1\package.json.
Installare Express
Installare il generatore di Express eseguendo il comando seguente:
PS C:\node\expressapp> npm install express-generator -g
Lo screenshot seguente mostra l'output del comando npm. L'output dovrebbe essere simile.
Passare alla directory WebRole1 e usare il comando express per generare una nuova applicazione:
PS C:\node\expressapp\WebRole1> express
Per continuare, immettere s o sì quando viene richiesto di sovrascrivere l'applicazione precedente. Express genera il file app.js e una struttura di cartelle per la compilazione dell'applicazione.
Per installare le altre dipendenze definite nel file package.json, immettere il comando seguente:
PS C:\node\expressapp\WebRole1> npm install
Usare il comando seguente per copiare il file bin/www in server.js. Questo passaggio consente al servizio cloud di trovare il punto di ingresso per questa applicazione.
PS C:\node\expressapp\WebRole1> copy bin/www server.js
Dopo il completamento del comando, nella directory WebRole1 dovrebbe essere presente un file server.js .
Modificare il file server.js rimuovendo uno dei caratteri '.' dalla riga seguente.
var app = require('../app');
Dopo aver apportato questa modifica, la riga deve essere visualizzata nel modo seguente:
var app = require('./app');
Questa modifica è obbligatoria perché il file (in precedenza
bin/www
) è stato spostato nella stessa directory del file dell'app richiesto. Al termine di questa modifica, salvare il file server.js .Utilizzare il comando seguente per eseguire l'applicazione nell'emulatore di Azure:
PS C:\node\expressapp\WebRole1> Start-AzureEmulator -launch
Modifica della visualizzazione
Modificare le visualizzazione in modo che il messaggio visualizzato sia "Welcome to Express in Azure".
Immettere il comando seguente per aprire il file index.jade:
PS C:\node\expressapp\WebRole1> notepad views/index.jade
Jade è il motore di visualizzazione predefinito utilizzato dalle applicazioni Express.
Modificare l'ultima riga di testo aggiungendo in Azure.
Salvare il file e chiudere il Blocco note.
Per visualizzare le modifiche, aggiornare il browser.
Dopo aver testato l'applicazione, usare il cmdlet Stop-AzureEmulator per arrestare l'emulatore.
Pubblicazione dell'applicazione in Azure
Nella finestra di Azure PowerShell usare il cmdlet Publish-AzureServiceProject per distribuire l'applicazione a un servizio di cloud
PS C:\node\expressapp\WebRole1> Publish-AzureServiceProject -ServiceName myexpressapp -Location "East US" -Launch
Al termine dell'operazione di distribuzione, il browser si apre e visualizza la pagina Web.
Passaggi successivi
Per ulteriori informazioni, vedere il Centro per sviluppatori di Node.js.