Servidor Simples com JavaScript e server.js
Neste post, mergulharemos no mundo da programação para entender como criar e gerenciar servidores, uma habilidade crucial para qualquer desenvolvedor que busca aprimorar suas capacidades. Compartilharei minha experiência com server.js
, uma ferramenta intuitiva e eficiente para configurar servidores e criar APIs de maneira simples e rápida. Vou guiá-lo, passo a passo, mostrando como configurar, instalar e criar rotas, além de oferecer dicas valiosas sobre o uso de templates com Pug.
Motivação
O objetivo é consolidar meu conhecimento e apresentar uma forma simplificada de criar uma API.
Começando
Primeiro, instale o server.js
:
bash
npm install server
Inclua a seguinte dependência em seu arquivo de configuração:
"dependencies": {
"server": "^1.0.34"
}
Após a instalação, vamos criar nossa primeira rota. Comece importando o server
e os métodos necessários:
const server = require('server');
const { get, post, error } = server.router;
Configure o servidor com:
const CONFIG = {
security:{csrf:false}, port:8080
}
Inicie o servidor com a seguinte estrutura:
server(CONFIG, []) // Aqui, adicionaremos nossos métodos e rotas.
Template Pug
Antes de prosseguir, vamos explorar os templates. Utilizo Pug para manipular templates de forma eficiente. Para mais informações, consulte a documentação do Pug. Para integrar o Pug ao seu projeto, utilize o método render
:
const { render } = server.reply;
Rotas
As rotas são definidas utilizando métodos como get
e post
. Aqui estão alguns exemplos:
get('/', () => {
return render('index.pug', {nome: "meu nome"});
}),
get('/sobre', () => {
return render('sobre.html');
}),
post('/', (ctx) => {
console.log(ctx.data['nome'], ctx.data['idade']);
return render('boas_vindas.pug', {nome: ctx.data['nome'], idade: ctx.data['idade']});
})
O Pug permite passar objetos e realizar herança de templates, o que é extremamente útil e prático.
Código Completo
Aqui está o código completo do servidor com server.js
:
const server = require('server')
const { get, post } = server.router
const { render } = server.reply
const CONFIG = {
security:{csrf:false},port:8080
}
server(CONFIG, [
// Adicione suas rotas aqui
])
Para mais detalhes, confira a documentação do server.js
e serverjs.io.
Vídeo Tutorial
Gravei um vídeo explicando tudo o que está neste artigo com mais detalhes. Assista ao vídeo aqui.
Top comments (0)