Mudança
This commit is contained in:
parent
a803ce705e
commit
c3edf5a11d
|
|
@ -4,23 +4,30 @@ import os
|
|||
from dotenv import load_dotenv
|
||||
from db import get_connection
|
||||
|
||||
#Carrega arquivo de variáveis de ambiente (.env)
|
||||
load_dotenv()
|
||||
|
||||
#Carrega variável de ambiente PORT. Essa variável contém a porta TCP utilizada na APIREST
|
||||
PORT = os.getenv("PORT")
|
||||
|
||||
#Cria objeto Flask. Esse objeto é necessário para utilização do FLASK
|
||||
#(módulo python para criação de APIs REST).
|
||||
app = Flask(__name__)
|
||||
#Aplica cors no objeto Flask
|
||||
CORS(app)
|
||||
|
||||
#Criar rota de saúde da aplicação
|
||||
@app.route("/health")
|
||||
def health():
|
||||
return jsonify({"message" : "API Flask version 1.0!!!"})
|
||||
|
||||
#=============================================================
|
||||
|
||||
@app.route("/produtos",methods=["GET"])
|
||||
def listar_produtos():
|
||||
conexao = get_connection()
|
||||
cursor = conexao.cursor(dictionary=True)
|
||||
|
||||
cursor.execute("Select * from produto")
|
||||
cursor.execute("select * from produto")
|
||||
produtos = cursor.fetchall()
|
||||
|
||||
cursor.close()
|
||||
|
|
@ -28,6 +35,8 @@ def listar_produtos():
|
|||
|
||||
return jsonify(produtos)
|
||||
|
||||
#=============================================================
|
||||
|
||||
@app.route("/produtos/<int:id>", methods=["GET"])
|
||||
def listar_produto_id(id):
|
||||
conexao = get_connection()
|
||||
|
|
@ -40,23 +49,31 @@ def listar_produto_id(id):
|
|||
conexao.close()
|
||||
|
||||
if produto is None:
|
||||
return jsonify({"erro" : "Produto nao encontrado"}), 404
|
||||
|
||||
return jsonify({"erro" : "Produto não encontrado"}), 404
|
||||
|
||||
return jsonify(produto)
|
||||
@app.route("/proddutos",methods=["POST"])
|
||||
def criar_produto():
|
||||
dados = request.get_jason()
|
||||
|
||||
#=============================================================
|
||||
|
||||
@app.route("/produtos",methods=["POST"])
|
||||
def criar_produto():
|
||||
dados = request.get_json()
|
||||
nome = dados.get("nome")
|
||||
preco = dados.get("preco")
|
||||
estoque = dados.get("estoque")
|
||||
|
||||
if nome is None or preco is None or estoque is None
|
||||
return jsonify({"erro" : "Produto invalido"}), 400
|
||||
|
||||
if nome is None or preco is None or estoque is None:
|
||||
return jsonify({"erro" : "Produto inválido"}), 400
|
||||
conexao = get_connection()
|
||||
cursor = conexao.cursor()
|
||||
sql = "insert into produto (nome, preco, estoque) values (%s, %s, %s)"
|
||||
cursor.execute(sql,(nome, preco, estoque))
|
||||
conexao.commit()
|
||||
novo_id = cursor.lastrowid
|
||||
cursor.close()
|
||||
conexao.close()
|
||||
return jsonify({"id" : novo_id, "nome": nome, "preco" : preco, "estoque" : estoque}), 201
|
||||
|
||||
|
||||
#Inicializa o servidor da APIRest
|
||||
if __name__ == "__main__":
|
||||
app.run(port=PORT, debug=True)
|
||||
app.run(port=PORT, debug=True)
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="pt-br">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<link rel="stylesheet" href="style.css">
|
||||
<title>Produtos</title>
|
||||
</head>
|
||||
<body>
|
||||
<header>
|
||||
|
||||
</header>
|
||||
<main>
|
||||
<h1> Lista de produtos</h1>
|
||||
<table>
|
||||
|
||||
</table>
|
||||
</main>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
Loading…
Reference in New Issue