Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/EmptyTag/156.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 嵌套的WL.api调用中断_Javascript_Jquery_Onedrive - Fatal编程技术网

Javascript 嵌套的WL.api调用中断

Javascript 嵌套的WL.api调用中断,javascript,jquery,onedrive,Javascript,Jquery,Onedrive,问题 我遇到的问题是,当我试图从我的父母那里调用第二个WL.api时,因为我需要第一个api的数据输出,脚本似乎中断了。我没有从第二个api得到任何错误响应。如果有人能为我指出这个问题的正确方向,我将不胜感激 注意:获取文件夹的第一个调用工作,我得到想要的数据。当我试图打第二个电话去取回想要的文件夹中的文件时,它断了 My函数是从按钮的onClick事件调用的,这是My函数: function getFolders() { WL.api({ path: "

问题 我遇到的问题是,当我试图从我的父母那里调用第二个
WL.api
时,因为我需要第一个api的
数据
输出,
脚本
似乎中断了。我没有从第二个api得到任何错误响应。如果有人能为我指出这个问题的正确方向,我将不胜感激

注意:获取文件夹的第一个调用工作,我得到想要的数据。当我试图打第二个电话去取回想要的文件夹中的文件时,它断了

My
函数是从按钮的
onClick
事件调用的,这是My
函数

function getFolders() {
       WL.api({
             path: "me/skydrive/files",
             method: "GET"
       }).then(
             function(response) {
               var folders = response.data;
               $.each(folders, function () {
                      var folder = this;
                      if (folder.name == 'FooBar') {
                         WL.api({
                            path: "/" + folder.id + "/files",
                            method: "GET"
                            }).then(
                                function(response2) {
                                    var files = response2.data;
                                    $.each(files, function() {
                                        var file = this;
                                        if (file.name == 'Foo') {
                                            alert(file.id);
                                        }
                                    });
                                },
                                function(responseFailed) {
                                    alert(responseFailed.error.message);
                                }
                          );
                        }
                    });
                },
                function(responseFailed) {
                    alert(responseFailed.error.message);
                }
            );  
} 

也许你必须检查你收到的是文件夹或相册,而不是文件,因为我认为你无法浏览文件中的文件

i、 e

在调用下一个api请求之前


如果你是对的,那就试试看。我的skydrive包含的不仅仅是文件夹,这反过来又使api崩溃。我认为你的回答被接受了!所以文件夹,很多惊讶,很有答案,这样正确哇@维基翁
if (folder.type == 'folder' || folder.type == 'album')
    if (folder.name == 'FooBar') { //do the call }