Bom dia. Estou com um problema na hora de inserir o produto aonde quando tento apresenta que não foi encontrado rota POST (POST http://localhost:4000/produto) obs. os comandos GET e DELETE funciona normalmente.
Alguem sabe oque está ocorrendo ?
Método criar produto
CriarProdutos: (produto) =>{
return fetch('http://localhost:4000/produto', {method: 'POST', headers: {'content-type': 'application/json'}, body: produto})
.then(res => res.json());;
},
Escutador de submite
escutadorDeSubmit = produto => {
ApiService.CriarProdutos(JSON.stringify(produto))
.then(res => res)
.then(produto =>{
this.setState({autores:[...this.state.autores, produto]})
PopUp.exibeMensagem('success', 'Produto adicionado com sucesso')
})
}
class App
import React, { Component } from 'react'; import 'materialize-css/dist/css/materialize.min.css'; import './App.css'; import Header from './Header'; import Tabela from './Tabela'; import Formulario from './Formulario'; import PopUp from './PopUp'; import ApiService from './ApiService';
class App extends Component {
constructor(props){ super(props);
this.state = {
autores: [
],
}
}
removeAutor = id => {
const { autores } = this.state;
this.setState({
autores: autores.filter((autor) => {
return autor.id !== id;
}),
})
PopUp.exibeMensagem('error', 'Produto Apagado');
ApiService.DeletarProdutoId(id, this.autor)
}
escutadorDeSubmit = produto => {
ApiService.CriarProdutos(JSON.stringify(produto))
.then(res => res)
.then(produto =>{
this.setState({autores:[...this.state.autores, produto]})
PopUp.exibeMensagem('success', 'Produto adicionado com sucesso')
})
} // adiciona os produtos na tabela mediande a resposta do banco de dados componentDidMount(){ ApiService.ListaProdutos() .then(res =>{ this.setState({autores: [...this.state.autores, ...res]}) }); }
render() {
return (
<div>
<Header />
<div className="container">
<Tabela autores={this.state.autores} removeAutor={this.removeAutor} />
<Formulario escutadorDeSubmit={this.escutadorDeSubmit} />
</div>
</div>
);
} }
export default App;