was passiert, wenn wir nicht beheben oder ablehnen, das Versprechen

Habe ich ein Szenario, wo bin ich wieder ein Versprechen.
Das Versprechen, im Grunde geben die Antwort des ajax-request.

Auf die Ablehnung der Versprechen, zeigt es eine Meldung, dass es ein server-Fehler.

Was ich will zu tun ist, wenn der response-code 401, dass ich weder auflösen wollen, die Versprechen, noch Sie abzulehnen(weil es zeigt Fehler-dialog). Ich will einfach nur umleiten auf die login-Seite.

Mein code sieht ungefähr so aus

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});
                    })    
                }
            }

        })
    });
}

Wie Sie sehen können, wenn der status 401, ich bin die Umleitung auf die login-Seite. Versprechen ist weder gelöst, noch abgelehnt.

Ist dieser code OK?
Oder gibt es eine bessere Möglichkeit, dies zu erreichen.

Dank.

InformationsquelleAutor der Frage Aniket | 2016-04-20

Schreibe einen Kommentar