with the responded resource failed error reactjs axios

reactjs - the - Cómo registrar todas las llamadas de axios desde un lugar en código



laravel error 419 post (5)

Utilice axios-debug-log

  1. npm install --save axios-debug-log
  2. require(''axios-debug-log'') antes de cualquier llamada a axios
  3. Establecer la variable de entorno DEBUG=axios

Por defecto, verás registros como los siguientes:

axios POST /api/auth/login +0ms axios 200 (POST http://localhost:8080/api/auth/login) +125ms axios POST /api/foo +0ms axios 200 (POST http://localhost:8080/api/foo) +15ms

Consulte axios-debug-log para las opciones de configuración y personalización.

Estoy usando axios para una aplicación de reacción y me gustaría registrar todas las llamadas de axios que estoy haciendo en cualquier parte de la aplicación. Ya estoy usando una única instancia global de axios a través de la función crear y puedo registrar un console.log genérico. Sin embargo, me gustaría más información como la función que se llama, parámetros, etc.



La mejor manera de hacer esto sería un interceptor. Cada interceptor se llama antes de una solicitud / respuesta. En este caso sería un interceptor de registro.

axios.interceptors.request.use(request => { console.log(''Starting Request'', request) return request }) axios.interceptors.response.use(response => { console.log(''Response:'', response) return response })

O algo por el estilo.

Es bueno que estés usando una nueva instancia de axios:

const api = axios.create({ timeout: 1000 })

De esa manera puedes llamar

api.interceptors[...]



Puedes intentar envolver la función axios.request en una Promesa.

function loggedRequest(config) { return new Promise((resolve, reject) => { axios.request(config) .then((res) => { // log success, config, res here resolve(res); }) .catch(err => { // same, log whatever you want here reject(err); }) }) }