Condividi tramite


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:

Visualizzazione di Welcome to Express in Azure in un Web browser

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.

Eseguire la procedura seguente per creare un nuovo progetto di servizio cloud denominato expressapp:

  1. 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.

    Icona di Azure PowerShell

  2. 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

  1. 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.

    Visualizzazione dell'output del comando npm install express in Windows PowerShell.

  2. 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 quando viene richiesto di sovrascrivere l'applicazione precedente. Express genera il file app.js e una struttura di cartelle per la compilazione dell'applicazione.

    Output del comando express

  3. Per installare le altre dipendenze definite nel file package.json, immettere il comando seguente:

    PS C:\node\expressapp\WebRole1> npm install
    

    Output del comando npm install

  4. 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 .

  5. 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 .

  6. Utilizzare il comando seguente per eseguire l'applicazione nell'emulatore di Azure:

    PS C:\node\expressapp\WebRole1> Start-AzureEmulator -launch
    

    Una pagina Web contenente Welcome to Express.

Modifica della visualizzazione

Modificare le visualizzazione in modo che il messaggio visualizzato sia "Welcome to Express in Azure".

  1. Immettere il comando seguente per aprire il file index.jade:

    PS C:\node\expressapp\WebRole1> notepad views/index.jade
    

    Contenuto del file index.jade.

    Jade è il motore di visualizzazione predefinito utilizzato dalle applicazioni Express.

  2. Modificare l'ultima riga di testo aggiungendo in Azure.

    File index.jade che nell'ultima riga riporta: p Welcome to #{title} in Azure

  3. Salvare il file e chiudere il Blocco note.

  4. Per visualizzare le modifiche, aggiornare il browser.

    Una finestra del browser in cui la pagina contiene Welcome to Express in Azure

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.

A web browser displaying the Express page. L'URL indica che la pagina ora è ospitata su Azure.

Passaggi successivi

Per ulteriori informazioni, vedere il Centro per sviluppatori di Node.js.