Creazione di un'applicazione Web Node.js utilizzando Express in un servizio cloud di AzureBuild a Node.js web application using Express on an Azure Cloud Service

Node.js include un set minimo di funzionalità nel runtime core.Node.js includes a minimal set of functionality in the core runtime. Gli sviluppatori usano spesso moduli di terze parti per fornire funzionalità aggiuntive durante lo sviluppo di un'applicazione Node.js.Developers often use 3rd party modules to provide additional functionality when developing a Node.js application. 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 this tutorial you will create a new application using the Express module, which provides an MVC framework for creating Node.js web applications.

Di seguito è riportata una schermata dell'applicazione completata:A screenshot of the completed application is below:

Visualizzazione di Welcome to Express in Azure in un Web browser

Creazione di un progetto di servizio cloudCreate a Cloud Service Project

Nota

Per completare questa sezione, è necessario avere un'installazione funzionante di Node.js e di Azure SDK per Node.js per la piattaforma.To successfully complete this section, you must have a working installation of Node.js and the Azure SDK for Node.js for your platform.

Eseguire la procedura seguente per creare un nuovo progetto di servizio cloud denominato 'expressapp':Perform the following steps to create a new cloud service project named 'expressapp':

  1. Nel menu Start o nella schermata Start cercare Windows PowerShell.From the Start Menu or Start Screen, search for Windows PowerShell. Fare infine clic con il pulsante destro del mouse su Windows PowerShell e scegliere Esegui come amministratore.Finally, right-click Windows PowerShell and select Run As Administrator.

    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:Change directories to the c:\node directory and then enter the following commands to create a new solution named expressapp and a web role named 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.By default, Add-AzureNodeWebRole uses an older version of Node.js. La precedente istruzione Set-AzureServiceProjectRole indica ad Azure di usare la versione 0.10.21 di Node.The Set-AzureServiceProjectRole statement above instructs Azure to use v0.10.21 of Node. Si noti che i parametri fanno distinzione tra maiuscole e minuscole.Note the parameters are case-sensitive. È possibile verificare di aver selezionato la versione corretta di Node.js controllando la proprietà engines in WebRole1\package.json.You can verify the correct version of Node.js has been selected by checking the engines property in WebRole1\package.json.

Installazione di ExpressInstall Express

  1. Installare il generatore di Express eseguendo il comando seguente:Install the Express generator by issuing the following command:

     PS C:\node\expressapp> npm install express-generator -g
    

    L'output del comando npm dovrebbe essere analogo al risultato mostrato di seguito.The output of the npm command should look similar to the result below.

    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:Change directories to the WebRole1 directory and use the express command to generate a new application:

     PS C:\node\expressapp\WebRole1> express
    

    Verrà richiesto di sovrascrivere l'applicazione precedente.You will be prompted to overwrite your earlier application. Immettere y o yes per continuare.Enter y or yes to continue. Express genererà il file app.js e una struttura di cartelle per creare l'applicazione.Express will generate the app.js file and a folder structure for building your application.

    Output del comando express

  3. Per installare le dipendenze aggiuntive definite nel file package.json, immettere il comando seguente:To install additional dependencies defined in the package.json file, enter the following command:

    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.Use the following command to copy the bin/www file to server.js. In questo modo, il servizio cloud potrà trovare il punto di ingresso per questa applicazione.This is so the cloud service can find the entry point for this application.

    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 .After this command completes, you should have a server.js file in the WebRole1 directory.

  5. Modificare il file server.js rimuovendo uno dei caratteri '.' dalla riga seguente.Modify the server.js to remove one of the '.' characters from the following line.

    var app = require('../app');
    

    Dopo questa modifica la riga dovrebbe avere un aspetto analogo al seguente.After making this modification, the line should appear as follows.

    var app = require('./app');
    

    Questa modifica è obbligatoria perché il file (in precedenza bin/www) è stato spostato nella stessa directory del file dell'app richiesto.This change is required since we moved the file (formerly bin/www,) to the same directory as the app file being required. Al termine di questa modifica, salvare il file server.js .After making this change, save the server.js file.

  6. Utilizzare il comando seguente per eseguire l'applicazione nell'emulatore di Azure:Use the following command to run the application in the Azure emulator:

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

    Una pagina Web contenente Welcome to Express.

Modifica della visualizzazioneModifying the View

Modificare le visualizzazione in modo che il messaggio visualizzato sia "Welcome to Express in Azure".Now modify the view to display the message "Welcome to Express in Azure".

  1. Immettere il comando seguente per aprire il file index.jade:Enter the following command to open the index.jade file:

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

    Contenuto del file index.jade.

    Jade è il motore di visualizzazione predefinito utilizzato dalle applicazioni Express.Jade is the default view engine used by Express applications. Per altre informazioni sul motore di visualizzazione Jade, vedere http://jade-lang.com.For more information on the Jade view engine, see http://jade-lang.com.

  2. Modificare l'ultima riga di testo aggiungendo in Azure.Modify the last line of text by appending 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.Save the file and exit Notepad.
  4. Aggiornare il tuo browser per vedere le modifiche.Refresh your browser and you will see your changes.

    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.After testing the application, use the Stop-AzureEmulator cmdlet to stop the emulator.

Pubblicazione dell'applicazione in AzurePublishing the Application to Azure

Nella finestra di Azure PowerShell usare il cmdlet Publish-AzureServiceProject per distribuire l'applicazione a un servizio di cloudIn the Azure PowerShell window, use the Publish-AzureServiceProject cmdlet to deploy the application to a cloud service

PS C:\node\expressapp\WebRole1> Publish-AzureServiceProject -ServiceName myexpressapp -Location "East US" -Launch

Al termine dell'operazione di distribuzione, verrà aperto il browser e verrà visualizzata la pagina Web.Once the deployment operation completes, your browser will open and display the web page.

A web browser displaying the Express page.

Passaggi successiviNext steps

Per ulteriori informazioni, vedere il Centro per sviluppatori di Node.js.For more information, see the Node.js Developer Center.