Galera, estou fazendo uma aplicação com Python, React e MongoDB. Meu problema é o seguinte: já consigo passar as informações do banco de dados via Python-React, mas não consigo utilizar as variáveis que mando do React para minha rota no Python para adicionar um novo item. Esta função do React envia os dados corretamente ao Python.
handleFormSubmit = (event) => {
event.preventDefault();
const {nome, quantidade, preco, codigo, categoria} = this.state;
axios.post('http://127.0.0.1:5000/produtos', {nome, quantidade, preco, codigo, categoria});
}
Mas minha rota não aceita as informações:
@app.route('/produtos', methods=['POST',])
def add_product():
nome = request.args.get('nome')
quantidade = request.args.get('quantidade')
preco = request.args.get('preco')
codigo = request.args.get('codigo')
categoria = request.args.get('categoria')
item = Product(nome, quantidade, preco, codigo, categoria)
item = item.__dict__
products.insert_one(item)
return json.dumps(item, default=str)
Estou usando Flask, alguém pode me ajudar a saber como conseguir fazer a minha rota absorver as variáveis que estão sendo enviadas pelo React?
Atualizando: Consegui!
@app.route('/produtos', methods=['POST',])
def add_product():
data = request.get_json()
nome = data['nome']
quantidade = data['quantidade']
preco = data['preco']
codigo = data['codigo']
categoria = data['categoria']
item = Product(nome, quantidade, preco, codigo, categoria)
item = item.__dict__
products.insert_one(item)
return json.dumps(item, default=str)