Пользовательское исключение не работает в JavaScript Promise - PullRequest
0 голосов
/ 12 ноября 2018

Я реализую пользовательское исключение в коде JavaScript, но оно не перехватывает исключение.

Я предоставляю свой код:

function sendRequest(URL, Data, authorization, requestType,cuboidName) {
var Response = new $.Deferred();
var json;
if (requestType.toString() == "GET") {
    $.ajax({
        url: URL,
        type: "GET",
        dataType: "json",
        headers: {
        'Authorization': authorization,
        'Accept': 'application/json'
        },
        success: function (result) {
        Response.resolve(result);
        //console.log("Response : " + JSON.stringify(result) + "\n\n\n");

        },
        error: function(err){
            throw new Error("Error Code:\t"+err.status+"\nReason:\tCuboid Download failed for Cuboid:"+cuboidName);
        }
    });
}
return Response.promise();
}

Я вызываю функцию sendRequest из следующего кода:

async loadDatatypeCuboid(dataCuboid)
{
    try
   {
    dataTypeCuboiId = "444";
    var res3 = new $.Deferred(); 
    Utils.sendRequest(this.baseUrl+"rest/v1/grid/"+dataTypeCuboiId+"?importTid=-1&view=LATEST&mode=0&baselineId=-1", null, Globals.authorization, "GET","Datatype").then(function (result) {
        res3.resolve(result);
        if (result.status == 500) {
        return;
        }
        else{

            } 
       });
        return res3.promise();
    }
    catch (error)
   {
        console.log(error);
    }
}

Я не могу отловить выданную ошибку. Консоль отображается как:

Utils.js: 26 Uncaught Ошибка: Код ошибки: 500 Причина: Cuboid Скачать не удалось для Cuboid: тип данных

Может кто-нибудь предложить, как обрабатывать исключения в обещании JavaScript? Заранее спасибо

...