Aula 7: Criando um Back-End com Flask (API Web) - Curso Grátis Introdutório de Programação, Web e Jogos

 

Aula 7: Criando um Back-End com Flask (API Web)

📌 Objetivo: Aprender a criar uma API usando Flask para conectar um site ou app ao banco de dados.


1️⃣ O Que é um Back-End?

O back-end é a parte de um sistema que roda no servidor e gerencia dados.

💡 Exemplo:

  • Quando você acessa um site de pedidos de comida, o back-end processa o pedido, armazena no banco de dados e envia a resposta ao usuário.

Para criar um back-end, usaremos Flask, um framework leve do Python.


2️⃣ Instalando o Flask

Abra o terminal e digite:

bash

pip install flask

3️⃣ Criando uma API Simples

Agora, vamos criar um servidor que responde "Olá, mundo!" quando acessamos.

📌 Crie um arquivo app.py e cole o código abaixo:

python

from flask import Flask app = Flask(__name__) @app.route('/') def home(): return "Olá, mundo!" if __name__ == '__main__': app.run(debug=True)

Explicação:

  • Criamos um servidor com Flask.
  • @app.route('/') define a rota principal (/).
  • return "Olá, mundo!" exibe essa mensagem no navegador.
  • app.run(debug=True) inicia o servidor.

🔥 Teste: Execute o código e acesse http://127.0.0.1:5000/ no navegador.


4️⃣ Criando uma Rota para Retornar Dados

Agora, vamos criar uma rota que retorna uma lista de clientes.

📌 Adicione isso ao app.py:

python

from flask import jsonify @app.route('/clientes') def clientes(): lista_clientes = [ {"id": 1, "nome": "Carlos", "idade": 25}, {"id": 2, "nome": "Ana", "idade": 30}, ] return jsonify(lista_clientes)

🔥 Teste:
Acesse http://127.0.0.1:5000/clientes no navegador e veja os dados em formato JSON!


5️⃣ Integrando o Banco de Dados com Flask

Agora, vamos conectar nossa API ao banco de dados SQLite!

📌 Modifique app.py para:

python

import sqlite3 from flask import Flask, jsonify app = Flask(__name__) # Função para buscar clientes do banco def buscar_clientes(): conexao = sqlite3.connect("meu_banco.db") cursor = conexao.cursor() cursor.execute("SELECT * FROM clientes") clientes = [{"id": row[0], "nome": row[1], "idade": row[2]} for row in cursor.fetchall()] conexao.close() return clientes @app.route('/clientes') def listar_clientes(): return jsonify(buscar_clientes()) if __name__ == '__main__': app.run(debug=True)

Explicação:

  • buscar_clientes() busca os dados no banco SQLite.
  • listar_clientes() retorna os clientes no formato JSON.

🔥 Teste:

  1. Execute app.py.
  2. Acesse http://127.0.0.1:5000/clientes.
  3. Veja os clientes cadastrados!

🎯 Exercício Prático

📌 Crie uma nova rota /adicionar_cliente que:

  1. Receba um nome e idade.
  2. Adicione ao banco.
  3. Retorne a mensagem "Cliente cadastrado com sucesso!".

💡 Dica: Use request.json para pegar os dados enviados.


📩 Próxima Aula

Se fizer o exercício, me avise!
Na Aula 8, vamos aprender Front-End com HTML, CSS e JavaScript, criando uma interface para consumir nossa API.

📌 Dúvidas? Pergunta aqui! 🚀

Comments

Popular posts from this blog

Aula 9: Deploy - Colocando Sua Aplicação Online - Curso Grátis Introdutório de Programação, Web e Jogos

Aula 8: Criando o Front-End com HTML, CSS e JavaScript - Curso Grátis Introdutório de Programação, Web e Jogos