簡體   English   中英

如何停止 Axios 中的請求?

[英]How to stop a request in Axios?

我想在數據庫離線或后端連接出現問題時停止請求,但我不知道該怎么做。

我的Axios設置如下:

import axios from "axios";
import AsyncStorage from '@react-native-async-storage/async-storage';

const baseURL = 'http://192.168.1.43:4000/server';

const gestorMedicoApi = axios.create({ baseURL});

gestorMedicoApi.interceptors.request.use(
    async (config) => {
        const token = await AsyncStorage.getItem('token');
        if (token) {
            config.headers!['x-token'] = token;
        }

        return config;
    }
)
export default gestorMedicoApi;

請求示例如下:

    const signUp = async ({ nombreEmpresa, email, telefono, contraseña }: RegisterData)  => {
        try {
            const resp = await gestorMedicoApi.post<Response>('/user/createUser', { nombreEmpresa, email, telefono, contraseña }); 

            dispatch({
                type: 'signUp',
                payload: {response: resp.data}
            })

        } catch (error: any) {
            dispatch({ type: 'addError', payload: {response: {status: "NOK", message: "Se ha producido un error al conectar con la base de datos."}} })
        }
    };

如果下一行失敗:

 const resp = await gestorMedicoApi.post<Response>('/user/createUser', { nombreEmpresa, email, telefono, contraseña });

流 go 進入 catch,但是請求一次又一次地嘗試連接,所以如果請求失敗,我想停止請求。

我怎么才能得到它?

axios 不會重復請求。 您的組件可能正在重新渲染或陷入循環,不斷調用您的注冊 function。 請重新檢查您的代碼,並在可能的情況下提供更多代碼段。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM