Soy un poco principiante para reaccionar. Desarrollé un Flask backend y ahora quiero emparejarlo con React para el frontend.
Que estoy usando fetch
en React para hacer la solicitud de GET. Cuando leo los datos, el texto o la respuesta cuando llamo response.text()
es el index.html
archivo en el public
directorio de mi aplicación
Aquí está mi código de reacción:
componentDidMount() {
fetch('/')
.then(response => {
console.log(response.text()) //Here is the text() i said before
this.setState({ snippets: response.data })
})
.catch(error=>{
console.log(error)
})
}
Aquí está el MRE de mi aplicación de frascos:
@app.route('/')
def index():
return {'snippets':['blah','blaha']
Mi representante en package.json
proxy: http://127.0.0.1:5000/
Mi backend de frasco funciona en el puerto 5000 y reacciona en el puerto 3000
Una cosa a tener en cuenta es que una petición POST (de <form>
) se envía al servidor backend y puedo recuperar el contenido de la petición POST en un frasco. Es la petición GET fetch
que no funciona.
Estructura del directorio:
-env
-getcode
-templates
-static
-__init__.py
-routes.py
-getcode-client
-src
-public
run.py
Aquí getcode
está el directorio de la aplicación del frasco y getcode-client
contiene la aplicación React creada usando create-react-app
NOTA: También intenté configurar un proxy manual como este: https://create-react-app.dev/docs/proxying-api-requests-in-development/#configuring-the-proxy-manually
pero ahora la aplicación de reacción no se muestra. Muestra completamente la salida json de mi matraz