Untitled

mail@pastecode.io avatar
unknown
python
a month ago
1.7 kB
3
Indexable
Never
from flask import Flask, request, jsonify

app = Flask(__name__)

musicas = [
    {
        'nome': 'Bohemian Rhapsody',
        'gênero': 'Rock',
        'autor': 'Queen',
        'ano': 1975
    },
    {
        'nome': 'Billie Jean',
        'gênero': 'Pop',
        'autor': 'Michael Jackson',
        'ano': 1982
    },
    {
        'nome': 'Shape of You',
        'gênero': 'Pop',
        'autor': 'Ed Sheeran',
        'ano': 2017
    },
    {
        'nome': 'Smells Like Teen Spirit',
        'gênero': 'Grunge',
        'autor': 'Nirvana',
        'ano': 1991
    },
    {
        'nome': 'Imagine',
        'gênero': 'Rock',
        'autor': 'John Lennon',
        'ano': 1971
    }
]

@app.route('/', methods=['GET'])
def show_musicas():
    return jsonify(musicas)

@app.route('/consultar/<int:id>',methods=['GET'])
def show_musicas_id(id):
    return jsonify(musicas[id])

@app.route('/criar', methods=['POST'])
def add_musica():
    nova_musica = request.get_json()
    musicas.append(nova_musica)
    return jsonify(nova_musica, 200)

@app.route('/editar/<int:id>', methods=['PUT'])
def alterar_musica(id):
    update_musica = request.get_json()
    musicas[id].update(update_musica)
    return jsonify(update_musica)

@app.route('/excluir/<int:id>', methods=['DELETE'])
def delete_musica(id):
    try:
        if musicas[id] is not None:
            del musicas[id]
            return jsonify({'mensagem': f'{musicas[id]} excluído com sucesso!'}),200
    except:
        return jsonify({'erro': f'Musica indice {id} Não encontrado'}),404

app.run(port=5000, host='localhost', debug=True)
Leave a Comment