Отмените предыдущие почтовые запросы, используя ax ios и ax ios отмены токена - PullRequest
0 голосов
/ 14 апреля 2020

Я использую почтовый запрос для получения некоторых значений с сервера, но когда пользователь выходит из системы, мне нужно отменить ранее инициированные запросы к серверу.

Я использую Ax ios библиотека для выполнения запросов ax ios - npm.

Я запускаю запрос на публикацию следующим образом:

class CancelService extends InternetService { 
    async triggerPostRequest(params),  {
        const response = await axios.post(`request`, params, {
            headers: {
                Accept: 'application/json',
                'x-access-token': 'abcd',
                'Content-Type': 'application/json',
            },
            cancelToken: this.manager.source.token,
        });
        const jsReponse = response.data;
        if (response.status === 200) {
            jsReponse.success = true;
            return jsReponse;
        }
        return {
            success: 'fail',
            message: response.message,
        };
    }   

И когда пользователь выходя из приложения, я отменяю и обновляю токен ax ios следующим образом.

const cancelService = new CancelService();
cancelService.cancelRequests();
cancelService.initilize();

Класс CancelService выглядит следующим образом:

class CancelService extends InternetService { 
    cancelRequests = () => {
    if (this.manager && this.manager.source) {
        this.manager.source.cancel({ message: 'all request cancelled.' });
    }
};

Но это кажется, что запросы не отменяются, учитывая, что при входе в систему со следующим пользователем загружаются результаты предыдущего запроса.

ОБНОВЛЕНИЕ:

У меня нет доступа, чтобы изменить бэкэнд, а также код унаследован, он делает несколько вызовов подряд, и я тоже не могу это изменить.

...