Más información: explorar la aplicación utilizada en este tutorial - AWS OpsWorks

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Más información: explorar la aplicación utilizada en este tutorial

importante

El AWS OpsWorks Stacks servicio llegó al final de su vida útil el 26 de mayo de 2024 y se ha desactivado tanto para los clientes nuevos como para los existentes. Recomendamos encarecidamente a los clientes que migren sus cargas de trabajo a otras soluciones lo antes posible. Si tienes preguntas sobre la migración, ponte en contacto con el AWS Support equipo en AWS Re:post o a través de Premium AWS Support.

En este tema, se describe la aplicación que AWS OpsWorks Stacks implementa en la instancia para este tutorial.

Para ver el código fuente de la aplicación, extrae el contenido del opsworks-windows-demo-nodejs GitHub repositorio en un directorio vacío de tu estación de trabajo local. También puede iniciar sesión en la instancia en la que ha implementado el libro de recetas y explorar el contenido del directorio /srv/mylinuxdemoapp.

El archivo index.js contiene el código más importante para la aplicación:

var express = require('express'); var app = express(); var path = require('path'); var os = require('os'); var bodyParser = require('body-parser'); var fs = require('fs'); var add_comment = function(comment) { var comments = get_comments(); comments.push({"date": new Date(), "text": comment}); fs.writeFileSync('./comments.json', JSON.stringify(comments)); }; var get_comments = function() { var comments; if (fs.existsSync('./comments.json')) { comments = fs.readFileSync('./comments.json'); comments = JSON.parse(comments); } else { comments = []; } return comments; }; app.use(function log (req, res, next) { console.log([req.method, req.url].join(' ')); next(); }); app.use(express.static('public')); app.use(bodyParser.urlencoded({ extended: false })) app.set('view engine', 'jade'); app.get('/', function(req, res) { var comments = get_comments(); res.render("index", { agent: req.headers['user-agent'], hostname: os.hostname(), nodeversion: process.version, time: new Date(), admin: (process.env.APP_ADMIN_EMAIL || "admin@unconfigured-value.com" ), comments: get_comments() }); }); app.post('/', function(req, res) { var comment = req.body.comment; if (comment) { add_comment(comment); console.log("Got comment: " + comment); } res.redirect("/#form-section"); }); var server = app.listen(process.env.PORT || 3000, function() { console.log('Listening on %s', process.env.PORT); });

Esto es lo que hace el archivo:

  • require carga módulos que contienen algún código dependiente que esta aplicación web necesita para funcionar como se espera.

  • Las funciones add_comment y get_comments escriben información en y leen información del archivo comments.json.

  • Para obtener información sobre app.get, app.listen, app.post, app.set y app.use, consulte la referencia de la API Referencia de la API Express.

Para obtener información sobre cómo crear y empaquetar la aplicación para la implementación, consulte Origen de las aplicaciones.