Javascript 将sdk.rest多重检索传递给承诺

Javascript 将sdk.rest多重检索传递给承诺,javascript,promise,Javascript,Promise,我的代码有什么问题? PrivateConfigurationPromission返回总是“挂起”。在阅读之前,我必须等待多重检索结果。我想不出哪里出了问题。我也试过用计时器,但答案总是“待定”。 向我解释我做错了什么 function isEmpty(obj) { if (obj == null) return true; if (obj.length > 0) return false; if (o

我的代码有什么问题? PrivateConfigurationPromission返回总是“挂起”。在阅读之前,我必须等待多重检索结果。我想不出哪里出了问题。我也试过用计时器,但答案总是“待定”。 向我解释我做错了什么

    function isEmpty(obj) {
            if (obj == null) return true;

            if (obj.length > 0)    return false;
            if (obj.length === 0)  return true;

            if (typeof obj !== "object") return true;

            for (var key in obj) {
                if (hasOwnProperty.call(obj, key)) return false;
            }

            return true;
        }

    function retrieveMultipleWithPromise() {
        var entityName = "privateconfiguration";
        var fieldValue = "value";
        var fieldName = "name";
        var fieldNameBaseValue = "pc_mvc_base";
        var fieldNameControllerValue = "pc_mvc_books";
        var option = "$select=" + fieldValue + "&$filter=" + fieldName + " eq '" + fieldNameBaseValue + "' or " + fieldName + " eq '" + fieldNameControllerValue + "'";

        return new Promise(function (resolve, reject) {
            var result = SDK.REST.retrieveMultipleRecords(
                entityName,
                option,
                function (result) {
                },
                function (error) {
                    errorHandler(error);
                },
                function () {
                }
            );
            if(!(isEmpty(result))){
                resolve(result);
            }
            else{
                reject(result);
            }
        });
    }

    var iframe = Xrm.Page.getControl("IFRAME_MVCApp");
    //retrieve delle due private conf.
    var privateConfigurationPromise = retrieveMultipleWithPromise()
        .then(result => result.map(function (item) { return item.ava_value; }).join(""))
        .catch(error => console.log(error));

};

什么是
SDK.REST
?它可能看起来像
返回新承诺((resolve,reject)=>{SDK.REST.retrieveMultipleRecords(entityName,option,resolve,reject,()=>{};})@Bergi SDK.Rest是Microsoft针对Rest调用的js SDK。根据您提出的更正,使用“privateConfigurationPromise return always”pending获得相同的结果-您如何使用它?retrieveMultiple返回两个字段,然后连接,它们将组成一个URL,我将使用该URL在iframe中解封webapp