Quickstarters
Feature Overview
How to Build a Backend for ASP.NET Core?
34 min
introdução neste tutorial, você aprenderá como construir um backend para asp net core usando back4app ao integrar os recursos essenciais do back4app—como gerenciamento de banco de dados, cloud code, apis rest e graphql, autenticação de usuários e consultas em tempo real—você terá uma solução de backend completa para suas aplicações asp net core essa abordagem suporta a construção de aplicações web escaláveis, lidando com a lógica do lado do servidor com uma configuração mínima com o back4app, você pode acelerar o desenvolvimento do backend para seu projeto asp net core você aproveitará uma plataforma de código aberto que suporta uma infraestrutura de api web confiável, conectividade de banco de dados e funções em nuvem robustas ao final deste tutorial, você terá uma base funcional para um backend seguro e extensível que oferece experiências de usuário aprimoradas e lida com dados em tempo real você pode então estender sua solução net core ou integrá la com outros serviços conforme necessário pré requisitos uma conta back4app e um novo projeto back4app começando com back4app https //www back4app com/docs/get started/new parse app se você não tiver uma conta, pode criar uma gratuitamente ambiente de desenvolvimento asp net core certifique se de que você tenha o sdk net (versão 6 0 ou superior) instalado baixar net https //dotnet microsoft com/en us/download familiaridade com c# e asp net core documentação oficial do asp net core https //learn microsoft com/en us/aspnet/core/?view=aspnetcore 6 0 opcional se você planeja usar o parse net sdk, precisará parse sdk dotnet https //github com/parse community/parse sdk dotnet ou referências no seu arquivo csproj certifique se de ter todos esses pré requisitos em ordem antes de começar ter seu projeto back4app e asp net core ambiente prontos tornará os passos muito mais fáceis de seguir passo 1 – criando um novo projeto no back4app e conectando por que este passo? seu asp net core backend começa com um projeto back4app este projeto é sua base do lado do servidor, gerenciando seu banco de dados, regras de segurança e configurações do aplicativo criando o projeto faça login na sua conta back4app clique em “novo app” no seu painel nomeie seu app (por exemplo, “aspnetcore backend tutorial”) após a criação, você verá seu app listado no seu painel este novo app é seu principal centro para desenvolvimento de backend tarefas instalando o parse net sdk (opcional) embora você possa usar rest api ou graphql diretamente, o parse net sdk pode simplificar operações de dados em suas soluções asp net core se você quiser integrá lo adicione o parse sdk ao seu csproj ou via gerenciador de pacotes nuget inicialize o sdk em sua aplicação asp net core (por exemplo, program cs ou startup cs ) substitua os espaços reservados com as credenciais das “configurações do app” > “segurança e chaves” do seu app back4app isso conecta seu projeto asp net core ao ambiente do lado do servidor do back4app passo 2 – configurando o banco de dados 1\ criando um modelo de dados use o painel do back4app para definir seu esquema de classe por exemplo, uma classe todo com colunas como título (string) e iscompleted (booleano) 2\ criando um modelo de dados usando o agente de ia abra o agente de ia no seu painel do back4app e descreva seu modelo de dados por exemplo, “crie uma nova classe todo para minhas aplicações asp net core ” o agente de ia então configura o esquema para você 3\ lendo e escrevendo dados usando o sdk net do parse aqui está como você pode criar e buscar todo itens em c# using parse; // create a new todo public async task\<parseobject> createtodo(string title, bool iscompleted) { var todo = new parseobject("todo") { { "title", title }, { "iscompleted", iscompleted } }; return await todo saveasync(); } // fetch all todos public async task\<ienumerable\<parseobject>> fetchtodos() { var query = new parsequery\<parseobject>("todo"); return await query findasync(); } 4\ lendo e escrevendo dados usando a api rest alternativamente, você pode usar uma api rest abordagem curl x post \\ h "x parse application id your application id" \\ h "x parse rest api key your rest api key" \\ h "content type application/json" \\ d '{"title" "buy groceries", "iscompleted" false}' \\ https //parseapi back4app com/classes/todo 5\ lendo e escrevendo dados usando a api graphql para usar graphql , envie consultas ou mutações para o endpoint graphql do back4app mutation { createtodo(input { fields { title "clean the house" iscompleted false } }) { todo { objectid title iscompleted } } } 6\ trabalhando com consultas ao vivo ative atualizações em tempo real ativando consultas ao vivo no seu painel (sob configurações do servidor ) em seguida, use a abordagem net ou websocket para se inscrever isso mantém os dados atualizados em sua aplicação web sem chamadas extras passo 3 – aplicando segurança com acls e clps visão geral de acls e clps acls (listas de controle de acesso) protegem objetos individuais clps (permissões em nível de classe) protegem classes inteiras essa abordagem em camadas mantém os dados seguros em seu asp net core ambiente configurando permissões em nível de classe abra a aba banco de dados no seu painel do back4app selecione a classe todo clique em permissões em nível de classe personalize leitura/gravação para papéis públicos ou autenticados configurando acls no código com o sdk net do parse, você pode definir acls em nível de objeto var todo = new parseobject("todo") { { "title", "private task" } }; // restrict read/write to only a particular user var acl = new parseacl(); acl setpublicreadaccess(false); acl setpublicwriteaccess(false); acl setreadaccess(user objectid, true); acl setwriteaccess(user objectid, true); todo acl = acl; await todo saveasync(); passo 4 – escrevendo funções de código em nuvem por que código em nuvem? código em nuvem é executado no lado do servidor , do back4app isso é ideal para validações, gatilhos ou lógica adicional para seu projeto asp net core você pode manter processos sensíveis seguros e fora do cliente exemplo de função em nuvem // main js example parse cloud define('calculatetextlength', async (request) => { const { text } = request params; if (!text) { throw new error('no text provided'); } return { length text length }; }); implantação implantar cloud code via back4app cli b4a deploy painel cole o código em cloud code > funções e clique em implantar chamando funções em nuvem em net public async task\<dictionary\<string, object>> gettextlength(string text) { var parameters = new dictionary\<string, object> { { "text", text } }; var result = await parsecloud callfunctionasync\<dictionary\<string, object>>("calculatetextlength", parameters); return result; } ou via rest curl x post \\ h "x parse application id your app id" \\ h "x parse rest api key your rest api key" \\ h "content type application/json" \\ d '{"text" "hello back4app"}' \\ https //parseapi back4app com/functions/calculatetextlength passo 5 – configurando autenticação ativar autenticação de usuário asp net core pode gerenciar sua própria identidade mas se você preferir, pode delegar isso à classe user back4app cuida da hash de senhas, rest api sessões e outros detalhes de segurança // sign up public async task signupuser(string username, string password, string email) { var user = new parseuser { username = username, password = password, email = email }; await user signupasync(); } // log in public async task\<parseuser> loginuser(string username, string password) { return await parseuser loginasync(username, password); } login social integre facebook , google , ou outros provedores, se desejado, configurando as configurações de oauth no back4app painel consulte a documentação de login social https //www back4app com/docs/platform/sign in with apple passo 6 – gerenciamento de armazenamento de arquivos carregando arquivos use parsefile para carregar imagens ou documentos public async task\<parsefile> uploadimage(byte\[] filebytes, string filename) { var parsefile = new parsefile(filename, filebytes); await parsefile saveasync(); return parsefile; } segurança de arquivos configure o upload de arquivos em configurações do app > segurança & chaves , ajustando quem pode carregar ou acessar arquivos isso protege os dados do usuário em sua aplicação web passo 7 – verificação de email e redefinição de senha por que é importante a verificação de email garante que os usuários possuam o email fornecido a redefinição de senha é crucial para uma experiência de usuário segura em suas soluções asp net core ative no back4app vá para configurações de email no seu painel do back4app ative ativar verificação de email ajuste o modelo de redefinição de senha para corresponder à sua marca passo 8 – agendando tarefas com cloud jobs automatizar tarefas em segundo plano use cloud jobs para executar tarefas recorrentes, como excluir dados antigos ou enviar lembretes por exemplo, cleanupoldtodos // main js parse cloud job('cleanupoldtodos', async (request) => { const todo = parse object extend('todo'); const query = new parse query(todo); const now = new date(); const thirty days = 30 24 60 60 1000; const cutoff = new date(now thirty days); query lessthan('createdat', cutoff); const oldtodos = await query find({ usemasterkey true }); await parse object destroyall(oldtodos, { usemasterkey true }); return `deleted ${oldtodos length} old todos `; }); defina o agendamento em configurações do servidor > tarefas em segundo plano no painel do back4app passo 9 – integrando webhooks usando webhooks webhooks permitem que seu asp net core backend chame serviços externos sempre que os dados mudam por exemplo, notifique um canal do slack quando um novo todo for criado navegue até webhooks em mais > webhooks adicione um novo endpoint escolha o evento (por exemplo, criar todo ) passo 10 – explorando o painel de administração do back4app visão geral o aplicativo de administração do back4app ajuda usuários não técnicos a gerenciar dados (crud) sem acessar o código é centrado em modelos e direto ativar sob painel do app > mais > app admin > ativar app admin crie um usuário admin e escolha um subdomínio em seguida, faça login com suas novas credenciais com o app admin, você e sua equipe podem lidar com tarefas essenciais de dados rapidamente, aumentando a colaboração e liberando tempo de desenvolvimento conclusão você aprendeu como construir um backend para asp net core usando back4app para otimizar dados, segurança e funcionalidade ao combinar uma plataforma de código aberto com suas habilidades em net core, você agora tem uma estrutura de banco de dados escalável com acls e clps consultas em tempo real para atualizações instantâneas de dados código em nuvem para lógica segura do lado do servidor endpoints de api web integrados para seu fluxo de desenvolvimento web trabalhos em nuvem automatizados e webhooks para estender seu backend um painel de administração fácil de usar para gerenciar dados com essas bases estabelecidas, você pode desenvolver aplicações asp net core completas que oferecem experiências de usuário de alta qualidade e lidam com tráfego em grande escala sem esforço próximos passos ir para produção reforçar regras de segurança, otimizar desempenho e aproveitar a análise do back4app adicionar recursos avançados experimente com funções, acesso baseado em funções ou apis de terceiros (por exemplo, stripe, slack) aprofundar se no código em nuvem escreva gatilhos personalizados, integre com serviços externos ou gerencie fluxos de trabalho complexos revisar a documentação oficial do back4app documentação do back4app https //www back4app com/docs/ oferece orientações sobre o uso avançado expanda seu projeto asp net core com padrões mvc mais ricos, microsserviços ou fluxos de autenticação especializados