我需要在我的网站中集成One Driver文件选择器。我正在使用这个js lib来完成任务。
<script type="text/javascript" src="//js.live.net/v5.0/wl.js"></script>
我写的代码是
WL.init({ client_id: "000000004C1xxxxx", redirect_uri: 'https://xxx.net/' });
WL.login({
scope: "wl.skydrive wl.signin"
}).then(
function(response) {
WL.fileDialog({
mode: "open",
select: "multi"
}).then(
function (response) {
},
function (responseFailed) {
}
);
},
function(response) {
log("Failed to authenticate.");
}
);
它显示了弹出窗口,并完成了身份验证过程。但是,一旦我在弹出窗口中登录。它只是重定向到我提供的重定向URL,文件选择器从未显示。有什么想法吗?
答案 0 :(得分:2)
我通过在回调页面中包含js脚本解决了这个问题,wl sdk会自动为你处理oauth进程。
<script type="text/javascript" src="//js.live.net/v5.0/wl.js"></script>
这很奇怪,因为我找不到任何与您在MS开发者网站上如何处理回调页面相关的文档。
答案 1 :(得分:0)
您是否可以使用http://isdk.dev.live.com上的“使用OneDrive选择器中的打开”样本?
答案 2 :(得分:0)
在js文件中使用以下功能,不要忘记包括:
<script type="text/javascript" src="https://js.live.net/v7.0/OneDrive.js"></script>
function launchOneDrivePicker() {
var odOptions = {
clientId: "*******************************",
action: "download",
multiSelect: true,
openInNewWindow: true,
advanced: {
queryParameters: "select=id,name,size,file,folder,photo",
redirectUri: (Eneter your default url e.g :)"http://localhost:60666/WebForm1.aspx"
},
success: function (response) { /* success handler */ },
cancel: function () { /* cancel handler */ },
error: function (e) { /* error handler */ },
};
OneDrive.open(odOptions);
}
我希望它对所有人都有效。