qu'advient-il si nous n'avons pas de résoudre ou de rejeter la promesse

J'ai un scénario où je suis de retour d'une promesse.
La promesse fondamentalement donner la réponse d'une requête ajax.

Sur le rejet de la promesse qu'il affiche une boîte de dialogue d'erreur qu'il y a une erreur de serveur.

Ce que je veux faire, c'est quand le code de réponse est 401, je ne veux résoudre les promesses ni de la rejeter(car il montre la boîte de dialogue d'erreur). Je veux simplement rediriger vers la page de connexion.

Mon code ressemble à ceci

function makeRequest(ur,params) {

    return new Promise(function(resolve,reject) {

        fetch(url,params)
        .then((response) => {

            let status = response.status;

            if (status >= 200 && status < 300) {
                response.json().then((data) => {
                    resolve(data);
                })
            }
            else {
                if(status === 401) {
                    redirectToLoginPage();
                }
                else {
                    response.json().then((error) => {

                        if (!error.message) {
                            error.message = constants.SERVER_ERROR;
                        }
                        reject({status,error});
                    })    
                }
            }

        })
    });
}

Comme vous pouvez le voir si le statut est en 401, je suis rediriger vers la page de connexion. La promesse n'est ni résolu ni rejetée.

Est ce code OK?
Ou est-il une meilleure façon de l'accomplir.

Grâce.

OriginalL'auteur Aniket | 2016-04-20