DEV Community

Gustavo Garcia Pereira
Gustavo Garcia Pereira

Posted on • Edited on

Server com node: serverjs

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 
Enter fullscreen mode Exit fullscreen mode

Inclua a seguinte dependência em seu arquivo de configuração:

"dependencies": { "server": "^1.0.34" } 
Enter fullscreen mode Exit fullscreen mode

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; 
Enter fullscreen mode Exit fullscreen mode

Configure o servidor com:

const CONFIG = { security:{csrf:false}, port:8080 } 
Enter fullscreen mode Exit fullscreen mode

Inicie o servidor com a seguinte estrutura:

server(CONFIG, []) // Aqui, adicionaremos nossos métodos e rotas. 
Enter fullscreen mode Exit fullscreen mode

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; 
Enter fullscreen mode Exit fullscreen mode

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']}); }) 
Enter fullscreen mode Exit fullscreen mode

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 ]) 
Enter fullscreen mode Exit fullscreen mode

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)