axios拦截器出错时如何显示snackbar

问题描述

每次我的 axios 拦截器出现错误时,我都试图显示一个快餐栏。 直到现在,当我的请求中发生一些不好的事情时,我还没有弄清楚我应该把我的零食栏放在哪里,以便在我的项目的任何页面中可见。

这是我的 api.js 文件,我所有的组件都使用 apiSecure 方法

import axios from "axios";
import { ResetTokenAndReattemptRequest } from "domain/auth/AuthService";

const api = axios.create({
    baseURL: process.env.REACT_APP_API_URL,headers: {
        "Content-Type": "application/json",},});

export const apiSecure = axios.create({
    baseURL: process.env.REACT_APP_API_URL,headers: {
        Authorization: "Bearer " + localStorage.getItem("Token"),"Content-Type": "application/json",});
    
export default api;

apiSecure.interceptors.response.use(
    function (response) {
        return response;
    },function (error) {
        const access_token = localStorage.getItem("Token");
        if (error.response.status === 401 && access_token) {
            return ResetTokenAndReattemptRequest(error);
        } else {
            console.error(error);
            // Here I would like to call my Snackbar to be shown in any page of my application
        }
        return Promise.reject(error);
    }
);

谢谢大家。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...