EU TENHO UMA DÚVIDA!
- #JavaScript
Pessoal, pode parecer bem besta para vocês, mas é algo que já procurei no google várias vezes e de várias maneiras, mas não consegui uma resposta direta
Partindo do ponto de vista de que se eu criar uma página HTML e quero fazer requisições para meu servidor com a finalidade ,por exemplo, de fazer login como eu crio esse servidor onde ficaram armazenadas as informações do meu site?




MF
Vamos lá, primeirro, não existe dúvida ou pergunta besta, dúvida é dúvida.
Do ponto de vista de estudos, é entender a relação Cliente x Servidor.
Um Servidor é um "computador" que estará sempre ligado a internet atendendo as requisições que os navegadores (chrome, firefox, edge, safari, etc) na web solicitarem.
Espero que essa sequência te ajude a ter maior entendimento sobre o assunto.
Se continuar com dúvidas, só falar.
Lucas, mesmo pensando em um site acessado por milhares de pessoas como o da dio?
LK
Bom dia Camila. Os dados para validação do seu login precisam estar em um banco de dados.
O ideal é criar um DTO (Data Transfer Object) para que os dados da classe modelo não sejam expostos (encapsulamento) durante o processo de validação.
Olá Camila,
Do ponto de vista HTML, basicamente será apenas a pagina, a aparência. A parte de validar login para ter acesso a outras partes de um sistema, ou de um site, já será com métodos que utilizam alguma linguagem de programação, geralmente rodando no back-end. O servidor é quem vai gerenciar as solicitações e normalmente eles ja estão prontos, vc só precisa baixar e configurar eles para gerenciarem suas paginas.
Nesse exemplo de fazer login, creio que o ideal seria criar um banco de dados no servidor, onde ficaria guardada as informações do usuario e do login.
Imagina que ao fazer o login, o email e senha inserido pelo usuário será enviado para o backend para ser tratado e fazer a busca no banco de dados sobre aquele usuario.
Para criar o servidor, recomendo usar o Apache, mais fácil para subir o site, depois só configurar os endpoints e o banco de dados.
Oi Camila, é complexo entender no começo esse ambiente "fullstack" e como o backend da aplicação conversa com o frontend. Mas é algo parecido com isso: Ao preencher os campos de login (usuario e senha), esses dados são enviados por meio de uma requisição para o backend que então cuida de enviar os dados para um outro servidor que cuida do banco de dados (uma estrutura permanente de dados em forma de tabelas ou não). É preciso ter a noção de que servidor é apenas um computador que presta um serviço, portanto o banco de dados normalmente é executado como um servidor que também recebe requisições e envia respostas. O protocolo de comunicação usado na web é o http (ou https em sua versão mais segura). Entao o usuario e senha digitados no frontend vão por meio de uma requisição http para o servidor (pesquise sobre endpoints da aplicação depois). O servidor recebe esses dados, manipula e armazena fazendo uma requisição para um outro servidor de banco de dados ou talvez o banco de dados esteja integrado no próprio servidor. Exemplo: um site em html, css e js usando a biblioteca React, que envia (usando o axios por exemplo) um objeto do tipo {username:'Vitor',senha:'banana123'} para o backend que recebe esses dados com o express (biblioteca que cria um servidor e escuta alguma porta) e trabalha com eles. Você pode criar um servidor em node (javascript para servidor) puro ou usar bibliotecas como o express que facilita o trabalho. Aprender sobre redes de computadores, protocolo http, servidores pode ajudar a entender mais conceitualmente tudo isso. Boa sorte!
Boa tarde Camila,
Partindo do ponto onde nossos colegas comentaram, e em relação ao seu questionamento sobre um site acessado por talvez milhares de pessoas, cabe salientar que a aplicação cliente interage com vários tipos de servidores, cada um com uma função, por exemplo.
Entre a aplicação cliente e o servidor onde está o recurso, existe:
Normalmente essa estrutura vai ficar hospedada em algum serviço de nuvem, como por exemplo o S3 que é um serviço de storage da AWS, aonde vai ficar a instância do seu banco de dados.
Espero ter contribuído, fica na paz.
Geralmente, isso envolve o uso de um banco de dados. Você pode escolher um banco de dados SQL (por exemplo, MySQL, PostgreSQL) ou NoSQL (por exemplo, MongoDB, Firebase) com base nas necessidades do seu aplicativo.
Matheus, nesse caso seria necessário criar uma API e conecta-la a um banco de dados, correto?
No cache, geralmente essas requisições ficam armazenadas no cache. É uma memória que existe em aplicações e o próprio browser tem também. Inclusive facilita quando você vai fazer a mesma requisição de novo, porque ao invés de buscar no banco de dados, a requisição já vai estar mais perto da porta de serviço. Se não me engano é isso, espero ter respondido sua pergunta!! E as informações do site ficam no hardware mesmo...