359 Stimmen

Richtiges Abfangen der Ausnahme von JSON.parse

Ich benutze JSON.parse auf eine Antwort, die manchmal eine 404-Antwort enthält. Gibt es in den Fällen, in denen 404 zurückgegeben wird, eine Möglichkeit, eine Ausnahme abzufangen und dann einen anderen Code auszuführen?

data = JSON.parse(response, function (key, value) {
    var type;
    if (value && typeof value === 'object') {
        type = value.type;
        if (typeof type === 'string' && typeof window[type] === 'function') {
            return new(window[type])(value);
        }
    }
    return value;
});

-3voto

vivek java Punkte 49

Sie können dies versuchen:

Promise.resolve(JSON.parse(response)).then(json => {
    response = json ;
}).catch(err => {
    response = response
});

-5voto

Jason Clay Punkte 11

Dieses Versprechen wird nicht aufgelöst, wenn das Argument von JSON.parse() nicht in ein JSON-Objekt geparst werden kann.

Promise.resolve(JSON.parse('{"key":"value"}')).then(json => {
    console.log(json);
}).catch(err => {
    console.log(err);
});

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X