He creado api con Python (django restframework). Llamo a esa API desde mi aplicación de reacción usando redux.
Funciona bien cuando lo llamo así.
const {data} = await axios.get(`http://127.0.0.1:8000/api/products/${id}`)pero cuando cambio la url a
const {data} = await axios.get(`api/products/${id}`)Luego hace una solicitud a una ruta diferente (http://localhost:3000/product/api/products/6) y quiero que haga una llamada a (http://localhost:8000/api/products/6
Agregué la ruta en el servidor django y permití llamadas desde la aplicación reaccionar. y funciona perfectamente cuando estaba trabajando con otras rutas.
por ejemplo, funcionaba bien cuando estaba llamando a esta ruta
const {data} = await axios.get('api/products/')Necesitas dar la url a la API. Si no proporciona la URL completa, agregará la URL de su aplicación de reacción.
Puedes declarar una variable con la ruta
API_URL = "http://localhost:8000/" const {data} = await axios.get(`${API_URL}api/products/${id}`)module.exports = { //... devServer: { proxy: { '/api': { target: 'http://127.0.0.1:8000', changeOrigin: true, }, }, }, };Agregue la configuración anterior a su paquete web, luego la solicitud puede ser reenviada por el servidor de desarrollo wepack.
más detalles, visitehttps://webpack.js.org/configuration/dev-server/#devserverproxy