使用 OneDrive 文件选取器将文件上传到默认文件夹 API
Upload file to default folder using OneDrive File Picker API
我们可以使用 OneDrive 的 JavaScript 文件选取器 API 将文件上传到 OneDrive 中的任何默认文件夹,例如文档或 Public 文件夹吗?
即而不是使用
设置路径
WL.upload({
path: response.data.folders[0].id,
element: "file",
overwrite: "rename"
});
我们可以像 Documents/Public 一样为默认文件夹设置路径值吗?
路径 "response.data.folders[0].id" 用于 select 调用 WL.fileDialog 时用户从 OneDrive 文件选择器 select 编辑的文件夹。如果您要上传到默认文件夹,您可能希望省略文件选择器并使用 JavaScript API.
按照 https://msdn.microsoft.com/en-us/library/hh550848.aspx 中的步骤完成此任务。
在代码的 HTML 部分,添加 和 以调用 wl.upload 函数。下面是我的代码,它将允许使用 select 文件并将其上传到 OneDrive 上的默认文件夹。在这种情况下,我使用了 "me/skydrive/my_documents"
<!DOCTYPE html>
<html>
<head>
<title>JavaScript Code Sample</title>
<script type="text/javascript" src="//js.live.net/v5.0/wl.js"></script>
</head>
<body>
<div style="padding: 1em">
<div id="signin"></div>
<label id="info"></label>
<form>
<input id="file" name="file" type="file" />
</form>
<button onclick="uploadFile()">Save file directly (calling WL.upload)</button>
<script>
WL.init({
client_id: 'Your_Client_ID',
redirect_uri: 'Your_Redirect_URL',
scope: "wl.signin",
response_type: "token"
});
WL.ui({
name: "signin",
element: "signin"
});
function uploadFile() {
WL.login({
scope: "wl.skydrive_update"
}).then(
function (response) {
WL.upload({
path: "me/skydrive/my_documents",
element: "file",
overwrite: "rename"
}).then(
function (response) {
document.getElementById("info").innerText =
"File uploaded.";
},
function (responseFailed) {
document.getElementById("info").innerText =
"Error uploading file: " + responseFailed.error.message;
}
);
},
function (responseFailed) {
document.getElementById("info").innerText =
"Error signing in: " + responseFailed.error.message;
}
);
}
</script>
</div>
</body>
</html>
我们可以使用 OneDrive 的 JavaScript 文件选取器 API 将文件上传到 OneDrive 中的任何默认文件夹,例如文档或 Public 文件夹吗?
即而不是使用
设置路径WL.upload({
path: response.data.folders[0].id,
element: "file",
overwrite: "rename"
});
我们可以像 Documents/Public 一样为默认文件夹设置路径值吗?
路径 "response.data.folders[0].id" 用于 select 调用 WL.fileDialog 时用户从 OneDrive 文件选择器 select 编辑的文件夹。如果您要上传到默认文件夹,您可能希望省略文件选择器并使用 JavaScript API.
按照 https://msdn.microsoft.com/en-us/library/hh550848.aspx 中的步骤完成此任务。
在代码的 HTML 部分,添加 和 以调用 wl.upload 函数。下面是我的代码,它将允许使用 select 文件并将其上传到 OneDrive 上的默认文件夹。在这种情况下,我使用了 "me/skydrive/my_documents"
<!DOCTYPE html>
<html>
<head>
<title>JavaScript Code Sample</title>
<script type="text/javascript" src="//js.live.net/v5.0/wl.js"></script>
</head>
<body>
<div style="padding: 1em">
<div id="signin"></div>
<label id="info"></label>
<form>
<input id="file" name="file" type="file" />
</form>
<button onclick="uploadFile()">Save file directly (calling WL.upload)</button>
<script>
WL.init({
client_id: 'Your_Client_ID',
redirect_uri: 'Your_Redirect_URL',
scope: "wl.signin",
response_type: "token"
});
WL.ui({
name: "signin",
element: "signin"
});
function uploadFile() {
WL.login({
scope: "wl.skydrive_update"
}).then(
function (response) {
WL.upload({
path: "me/skydrive/my_documents",
element: "file",
overwrite: "rename"
}).then(
function (response) {
document.getElementById("info").innerText =
"File uploaded.";
},
function (responseFailed) {
document.getElementById("info").innerText =
"Error uploading file: " + responseFailed.error.message;
}
);
},
function (responseFailed) {
document.getElementById("info").innerText =
"Error signing in: " + responseFailed.error.message;
}
);
}
</script>
</div>
</body>
</html>