我在显示位于根目录中的文件夹的内容时遇到了问题。它设法确定文件目录中的文件夹,但是当我尝试对其中一个文件夹执行相同操作时它不起作用。
我在WL.api的路径名中解决了这个问题。但是我可能弄错了。
我使用了live connect development center的skydrive页面中的代码示例。在下面的示例中,我首先尝试确定文件夹,但最终我想获取存储在特定目录中的所有文件的名称。
WL.api({ path: "me/skydrive/files/myfolder", method: "get" }).then(
function (response) {
var items = response.data;
var outPuts = "";
var number = items.length
var tempos = new Array();
var foundFolder = 0;
for (var i = 0; i < items.length; i++) {
if (items[i].type === "folder" || items[i].type === "album") {
tempos[i] = items[i].name;
foundFolder += 1;
}
}
if (foundFolder == 0) {
folderss.innerHTML = ("Unable to find any folders");
}
else {
for (var i = 0; i < number; i++) {
outPuts = outPuts + tempos[i] + "<br /> <br />"
}
folderss.innerHTML = outPuts;
}
}
);
如果我只为WL路径保留“me / skydrive / files”。有用。但是,如果我添加任何特定的文件夹名称,就像我的情况“me / skydrive / files / myfolder”那样,调用什么都不返回。或者我可以声明一条路径:“me / skydrive / files / folder.567391047.34282821!”
感谢任何能提供帮助的人。
答案 0 :(得分:2)
我认为您的问题是由于您使用的路径格式无效。根据{{3}},列出文件的有效路径具有以下形式: / OBJECT_ID / files ,其中OBJECT_ID可替换为 me / skydrive 以引用Skydrive根文件夹。
需要注意的重要事项是:
因此,要列出子文件夹 folder.567391047.34282821!的内容,您应该尝试使用以下路径格式: /folder.567391047.34282821!/files 甚至 folder.567391047.34282821!/ files (没有前导斜杠,因为它似乎是可选的。)
如果这可以解决您的问题,请告诉我。