A Netlify é uma plataforma de hospedagem e automação projetada para simplificar o desenvolvimento, implantação e gerenciamento de aplicativos web modernos. Funcionando como uma solução de PaaS (Platform as a Service), a Netlify oferece aos desenvolvedores uma abordagem fácil e eficiente para hospedar sites, aplicativos e funções serverless.
1.1 crie a pasta
mkdir my-express-backend
1.2 Acesse a pasta
cd my-express-backend
1.3 Inicie a estrutura inicial
npm init -y
npm i express serverless-http @netlify/functions @types/express
Detalhe: neste arquivo contera as declarações de rotas a serem dimensionadas de acordo com sua necessidade e de acordo com tal ira ser acessivel em : https://url_projeto/api/SuaFunção
Crie em o arquivo api.ts
/netlify/functions/api.ts
Cole os dados abaixo no diretorio especificado:
import express, { Router } from "express";
import serverless from "serverless-http";
const api = express();
const router = Router();
//===============================================================
// Rotas a serem planejadas
router.get("/hello", (req, res) => res.send("Hello World!"));
api.use("/api/", router);
// n_rotas . . .
//===============================================================
export const handler = serverless(api);
Crie o arquivo denominado netlify.toml no diretorio raiz do projeto e coloque os dados abaixo:
<!-- ========================================================= -->
[functions]
<!-- declara o pacote externo necessario para usar no servidor -->
external_node_modules = ["express"]
<!-- empacotador de funções netlify -->
node_bundler = "esbuild"
<!-- ========================================================= -->
[[redirects]]
<!-- Redireciona as rotas para /api/ * -->
force = true
from = "/api/*"
status = 200
to = "/.netlify/functions/api/:splat"
<!-- ========================================================= -->
[build]
<!-- Builda a função para registro de logs no netlify -->
command = "echo Building Functions"
- Faça commit do código no Git.
- Use o .gitignore para evitar subir arquivos node_modules
- Crie um repositório no GitHub ou em outro serviço de hospedagem.
- Conecte seu repositório ao Netlify para acionar implantações automáticas.
-
As rotas do backend agora estão disponíveis no Netlify, por exemplo:
/api/rota_definida
-
Você pode acessar essas rotas a partir de outros serviços ou ferramentas para testar ou integrar com o seu backend.
-
As rotas são definidas apatir do arquivo api.ts localizado em /netlify/functions/api.ts
Documentação oficial acesse netlify docs