Quickstarters
CRUD Samples
Como criar um app CRUD com Node?
34 min
visão geral neste guia, você aprenderá como desenvolver uma aplicação crud completa (criar, ler, atualizar, excluir) usando node js utilizaremos o back4app como nosso serviço de backend para simplificar a gestão de dados este guia irá orientá lo na configuração de um projeto back4app, no design de um modelo de dados dinâmico e na implementação de operações crud usando node js inicialmente, você configurará um projeto back4app chamado basic crud app node que fornece uma solução robusta de armazenamento de dados não relacional em seguida, você irá projetar seu esquema de dados definindo coleções e campos manualmente ou aproveitando o agente de ia do back4app depois, você gerenciará seu backend através do back4app admin app—uma interface amigável de arrastar e soltar para manipulação de dados finalmente, você integrará sua aplicação node js com o back4app usando o sdk javascript do parse (ou a api rest/graphql conforme necessário) enquanto garante controles de acesso seguros ao final deste tutorial, você terá construído uma aplicação node js pronta para produção, capaz de realizar operações crud essenciais, juntamente com autenticação de usuário e segurança de dados o que você vai aprender como criar uma aplicação crud baseada em node js com um backend de baixo código eficaz estratégias para projetar um backend escalável e conectá lo à sua aplicação node js como utilizar o back4app admin app para operações de criar, ler, atualizar e excluir de forma simplificada técnicas de implantação, incluindo a containerização com docker, para lançar sua aplicação node js de forma eficiente pré requisitos antes de começar, certifique se de que você tem uma conta back4app com um projeto recém configurado precisa de ajuda? visite introdução ao back4app https //www back4app com/docs/get started/new parse app uma configuração de desenvolvimento node js use um editor de código como o visual studio code e certifique se de que o node js (v14 ou posterior) está instalado conhecimento básico de node js, programação assíncrona e apis rest consulte a documentação do node js https //nodejs org/en/docs/ se necessário passo 1 – configurando seu projeto criando um novo projeto back4app faça login na sua conta back4app clique no botão “novo app” no seu painel nomeie seu projeto basic crud app node e siga as instruções na tela para completar a configuração criar novo projeto após a criação, seu projeto aparecerá no seu painel, pronto para configuração de backend passo 2 – elaborando seu esquema de dados definindo suas estruturas de dados para este aplicativo crud, você criará várias coleções em seu projeto back4app abaixo estão exemplos das coleções e campos principais necessários para a funcionalidade básica de crud 1\ coleção de itens esta coleção armazena detalhes sobre cada item campo tipo descrição id objectid identificador único gerado automaticamente título string o nome do item descrição string uma breve visão geral do item criadoem data timestamp marcando quando o item foi adicionado atualizadoem data carimbo de data/hora marcando a última atualização 2\ coleção de usuários esta coleção lida com credenciais de usuário e dados de autenticação campo tipo descrição id objectid identificador único gerado automaticamente nome de usuário string nome único para o usuário email string endereço de e mail único do usuário hashdasenha string senha hash para autenticação segura criadoem data timestamp quando a conta foi criada atualizadoem data timestamp quando a conta foi atualizada você pode criar essas coleções e campos manualmente através do painel do back4app criar nova classe você pode adicionar colunas escolhendo um tipo de dado, nomeando o campo, definindo valores padrão e marcando os como obrigatórios criar coluna utilizando o agente de ia do back4app para geração de esquema o agente de ia do back4app simplifica a configuração do esquema gerando automaticamente seu modelo de dados com base na sua descrição isso acelera a configuração e garante que suas estruturas de dados suportem todas as operações crud como usar o agente de ia abra o agente de ia acesse o agente de ia nas configurações do seu projeto back4app descreva seu esquema de dados descreva as coleções e campos que você precisa revise e aplique o agente de ia sugerirá um esquema revise a proposta e aplique as alterações exemplo de prompt create the following collections in my back4app project 1\) collection items \ fields \ id objectid (auto generated) \ title string \ description string \ createdat date (auto generated) \ updatedat date (auto updated) 2\) collection users \ fields \ id objectid (auto generated) \ username string (unique) \ email string (unique) \ passwordhash string \ createdat date (auto generated) \ updatedat date (auto updated) este método garante um modelo de dados consistente e otimizado passo 3 – habilitando o app admin e realizando operações crud visão geral do app admin o app admin do back4app fornece uma interface sem código para gerenciar seus dados de backend seu design de arrastar e soltar torna simples a execução de tarefas crud, como adicionar, visualizar, atualizar e excluir registros ativando o app admin vá para a seção “mais” no seu painel do back4app selecione “app admin” e clique em “habilitar app admin ” configure suas credenciais de administrador configurando sua conta de administrador inicial este processo também criará funções (por exemplo, b4aadminuser ) e classes de sistema habilitar app admin após a ativação, faça login no app admin para gerenciar seus dados painel do app admin gerenciando operações crud com o app admin dentro do app admin você pode inserir registros use o botão “adicionar registro” dentro de uma coleção (por exemplo, itens) para criar novas entradas revisar e editar registros clique em qualquer registro para inspecionar seus detalhes ou atualizar seus campos excluir registros remova entradas que não são mais necessárias esta interface amigável simplifica consideravelmente a gestão de dados passo 4 – conectando sua aplicação node js com back4app com seu backend configurado, é hora de conectar seu app node js ao back4app opção a usando o sdk javascript do parse instale o sdk javascript do parse execute o seguinte comando no diretório do seu projeto npm install parse inicialize o parse na sua aplicação node js crie um arquivo de configuração (por exemplo, parseconfig js ) // parseconfig js const parse = require('parse/node'); parse initialize('your application id', 'your javascript key'); parse serverurl = 'https //parseapi back4app com'; module exports = parse; 3\ implement crud operations for example, create a service to manage items ```javascript // itemsservice js const parse = require(' /parseconfig'); async function fetchitems() { const items = parse object extend('items'); const query = new parse query(items); try { const results = await query find(); console log('fetched items ', results); return results; } catch (error) { console error('error retrieving items ', error); } } async function createitem(title, description) { const items = parse object extend('items'); const item = new items(); item set('title', title); item set('description', description); try { await item save(); console log('item successfully created '); } catch (error) { console error('error creating item ', error); } } async function updateitem(objectid, newtitle, newdescription) { const items = parse object extend('items'); const query = new parse query(items); try { const item = await query get(objectid); item set('title', newtitle); item set('description', newdescription); await item save(); console log('item updated successfully '); } catch (error) { console error('error updating item ', error); } } async function deleteitem(objectid) { const items = parse object extend('items'); const query = new parse query(items); try { const item = await query get(objectid); await item destroy(); console log('item deleted successfully '); } catch (error) { console error('error deleting item ', error); } } module exports = { fetchitems, createitem, updateitem, deleteitem, }; opção b usando rest ou graphql se você preferir não usar o parse sdk, pode interagir com o back4app através de chamadas de api rest por exemplo, aqui está como recuperar itens usando node js const https = require('https'); function fetchitemsrest() { const options = { hostname 'parseapi back4app com', path '/classes/items', method 'get', headers { 'x parse application id' 'your application id', 'x parse rest api key' 'your rest api key' } }; const req = https request(options, res => { let data = ''; res on('data', chunk => data += chunk); res on('end', () => console log('response ', data)); }); req on('error', error => console error('error ', error)); req end(); } fetchitemsrest(); integre essas chamadas rest em seus serviços node js conforme necessário passo 5 – fortalecendo a segurança do seu backend configurando listas de controle de acesso (acls) aumente a segurança dos seus dados configurando acls em seus objetos por exemplo, para tornar um item acessível apenas ao seu criador const parse = require(' /parseconfig'); async function createprivateitem(title, description, owner) { const items = parse object extend('items'); const item = new items(); item set('title', title); item set('description', description); const acl = new parse acl(); acl setreadaccess(owner, true); acl setwriteaccess(owner, true); acl setpublicreadaccess(false); acl setpublicwriteaccess(false); item setacl(acl); try { await item save(); console log('private item created successfully '); } catch (error) { console error('error saving private item ', error); } } configurando permissões em nível de classe (clps) ajuste os clps no seu painel do back4app para impor regras de segurança padrão, garantindo que apenas usuários autenticados possam interagir com coleções específicas passo 6 – implementando a autenticação de usuário configurando o gerenciamento de usuários o back4app utiliza a coleção de usuários integrada do parse para gerenciar a autenticação em seu aplicativo node js, implemente o cadastro e login de usuários conforme mostrado abaixo const parse = require(' /parseconfig'); async function signup(username, password, email) { const user = new parse user(); user set('username', username); user set('password', password); user set('email', email); try { await user signup(); console log('user registered successfully!'); } catch (error) { console error('error during sign up ', error); } } async function login(username, password) { try { const user = await parse user login(username, password); console log('user logged in ', user get('username')); } catch (error) { console error('login error ', error); } } module exports = { signup, login }; uma abordagem semelhante pode ser usada para gerenciamento de sessão e recursos adicionais de autenticação passo 7 – implantando sua aplicação node js back4app fornece um processo de implantação suave você pode implantar seu aplicativo node js usando vários métodos, incluindo a containerização docker 7 1 construindo sua aplicação compilar e empacotar use sua ferramenta de construção preferida (como npm ou yarn) para preparar sua aplicação por exemplo, execute npm run build verifique sua construção certifique se de que seu pacote de produção contém todos os módulos e arquivos necessários 7 2 organizando o layout do seu projeto uma estrutura típica de projeto node js pode parecer basic crud app node/ \| src/ \| | controllers/ \| | | itemscontroller js \| | | authcontroller js \| | models/ \| | | item js \| | | user js \| | routes/ \| | itemsroutes js \| | authroutes js \| parseconfig js \| package json \| readme md 7 3 dockerizando seu app node js se você preferir a implantação em contêiner, adicione um dockerfile na raiz do seu projeto \# use an official node js runtime as a parent image from node 14 alpine \# set the working directory workdir /usr/src/app \# copy package files and install dependencies copy package json / run npm install \# copy the rest of the application code copy \# expose the application port (adjust if necessary) expose 3000 \# start the node js application cmd \["npm", "start"] 7 4 implantando via implantação web do back4app conecte seu repositório github hospede seu código fonte node js no github configure as configurações de implantação no seu painel do back4app, escolha a opção implantação web , vincule seu repositório (por exemplo, basic crud app node ), e selecione o branch desejado defina os comandos de build e saída defina seu comando de build (por exemplo, npm run build ) e especifique a pasta de saída implante seu aplicativo clique em implantar e monitore os logs até que sua aplicação esteja ao vivo passo 8 – conclusão e melhorias futuras parabéns! você agora construiu uma aplicação crud em node js integrada com o back4app você configurou um projeto chamado basic crud app node , estabeleceu coleções para itens e usuários, e gerenciou seu backend com o back4app admin app além disso, você conectou sua aplicação node js via o parse javascript sdk (ou rest/graphql) e implementou medidas de segurança robustas próximos passos aprimore sua aplicação considere adicionar recursos como filtragem avançada, visualizações detalhadas ou atualizações em tempo real expanda as capacidades do backend explore funções em nuvem, integrações de api de terceiros ou controles de acesso baseados em função aprofunde sua especialização confira a documentação do back4app https //www back4app com/docs e tutoriais adicionais para refinar ainda mais sua aplicação feliz codificação e melhores desejos em sua jornada com sua aplicação crud em node js!