Aprendendo mais: Explore o aplicativo usado nessa apresentação - AWS OpsWorks

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Aprendendo mais: Explore o aplicativo usado nessa apresentação

Importante

O AWS OpsWorks Stacks serviço chegou ao fim da vida útil em 26 de maio de 2024 e foi desativado para clientes novos e existentes. É altamente recomendável que os clientes migrem suas cargas de trabalho para outras soluções o mais rápido possível. Se você tiver dúvidas sobre migração, entre em contato com a AWS Support equipe no AWS re:POST ou por meio do Premium AWS Support.

Este tópico descreve o aplicativo que o AWS OpsWorks Stacks implanta na instância para este passo a passo.

Para ver o código-fonte do aplicativo, extraia o conteúdo do opsworks-windows-demo-nodejs GitHub repositório em um diretório vazio na sua estação de trabalho local. Você também pode entrar na instância na qual implantou o livro de receitas e explorar os conteúdos do diretório /srv/mylinuxdemoapp.

O arquivo index.js contém o código mais significativo para o aplicativo:

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); });

Veja o que o arquivo faz:

  • require carrega módulos que contêm algum código dependente que esse aplicativo da web precisa para ser executado como esperado.

  • As funções add_comment e get_comments escrevem informações para, e leem informações do arquivo comments.json.

  • Para obter mais informações sobre app.get, app.listen, app.post, app.set e app.use, consulte o Expressar referência da API.

Para aprender como criar pacote para aplicativo de implantação, consulte Origem do aplicativo.