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
AWS OpsWorks Stacks ya no acepta nuevos clientes. Los clientes actuales podrán utilizar la consola, la API, la CLI y los recursos de CloudFormation de OpsWorks con normalidad hasta el 26 de mayo de 2024, fecha en la que dejarán de dejarán de estar disponibles. A fin de prepararse para esta transición, le recomendamos que pase sus pilas a AWS Systems Manager lo antes posible. Para más información, consulte AWS OpsWorks Stacks Preguntas frecuentes sobre el final de la vida útil y Migración de sus AWS OpsWorks Stacks aplicaciones a AWS Systems Manager Application Manager.
En este tema se describe la aplicación que implementa AWS OpsWorks Stacks en la instancia para este tutorial.
Para ver el código fuente de la aplicación, extraiga el contenido del repositorio GitHub opsworks-windows-demo-nodejs/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
yget_comments
escriben información en y leen información del archivocomments.json
. -
Para obtener información sobre
app.get
,app.listen
,app.post
,app.set
yapp.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.