在OneDrive(LIVE SDK API)的当前文件夹中创建副本(复制)文件
在Javascript上,我使用的是Live SDK REST API(这是一个针对单驱动器基本REST服务的API,如下所述:),我试图实现一个“复制文件/复制”操作,以便在我的当前路径上创建副本(更改名称)。 当我在此处发出复制请求时(其中路径是我要复制的文件,目标是其当前文件夹): 我得到了错误响应,因为资源已经存在(这是完全合理的)。但是,我无法找到在请求上添加filenameCopy1参数的方法来避免这种情况 因此,我认为进行克隆的唯一方法是使用一个临时文件夹来复制文件,然后用filenameCopy1重命名它,然后将其移回当前文件夹。这个过程真的很慢,也不太安全(例如,如果只发生一个动作怎么办)在OneDrive(LIVE SDK API)的当前文件夹中创建副本(复制)文件,sdk,onedrive,live-sdk,Sdk,Onedrive,Live Sdk,在Javascript上,我使用的是Live SDK REST API(这是一个针对单驱动器基本REST服务的API,如下所述:),我试图实现一个“复制文件/复制”操作,以便在我的当前路径上创建副本(更改名称)。 当我在此处发出复制请求时(其中路径是我要复制的文件,目标是其当前文件夹): 我得到了错误响应,因为资源已经存在(这是完全合理的)。但是,我无法找到在请求上添加filenameCopy1参数的方法来避免这种情况 因此,我认为进行克隆的唯一方法是使用一个临时文件夹来复制文件,然后用file
非常感谢你的建议。谢谢。支持您所追求的功能。
Live-Connect
API目前尚未开发,因此如果可以的话,我绝对建议您切换。谢谢,最后我选择了新的OneDrive API。它对于所有单独的操作都更加健壮。但是,这很棘手,因为我必须手动为我的应用程序添加身份验证窗口+复制文件时的一些问题-响应是一个位置url(用于监视复制进度),而不是复制文件的数据
function copyFile_onClick() {
WL.login({
scope: "wl.skydrive_update"
}).then(
function (response) {
WL.api({
path: "file.a6b2a7e8f2515e5e.A6B2A7E8F2515E5E!141",
method: "COPY",
body: {
destination: "folder.a6b2a7e8f2515e5e.A6B2A7E8F2515E5E!125"
}
}).then(
function (response) {
document.getElementById("infoArea").innerText = "Item copied.";
},
function (responseFailed) {
document.getElementById("infoArea").innerText =
"Error calling API: " + responseFailed.error.message;
}
);
},
function (responseFailed) {
document.getElementById("infoArea").innerText =
"Login error: " + responseFailed.error_description;
}
);
}