Создавать копии (дубликаты) файлов в текущей папке для OneDrive (LIVE SDK API)
В Javascript я использую Live SDK REST API (это API для основных служб REST One Drive, как описано здесь: https://msdn.microsoft.com/en-us/library/hh826531.aspx), и я пытаюсь реализовать действие "Создать копию файла / дубликата", чтобы создать дубликаты (с измененными именами) на моем текущем пути. Когда я делаю запрос COPY, как здесь (где путь - это мой файл, который я хочу скопировать, а пункт назначения - его текущая папка):
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;
}
);
}
Я получаю сообщение об ошибке, так как ресурс там уже существует (что вполне разумно). Однако я не могу найти способ добавить параметр filenameCopy1 в запрос, чтобы избежать этого.
Поэтому я думаю, что единственный способ сделать клонирование - это создать временную папку для копирования файла, затем переименовать его с именем filenameCopy1 и затем переместить обратно в текущую папку. Этот процесс действительно медленный и не настолько безопасный (например, что если произойдет только одно действие).
Любой совет действительно ценится. Благодарю.