如何在浏览器上使用OneDrive文件选择器

时间:2014-12-22 06:30:33

标签: javascript angularjs onedrive

我在AngularJS的主题中遇到同样的问题:How to use one drive file picker in browser?
我已将<script type="text/javascript" src="//js.live.net/v5.0/wl.js"></script>添加到我的index.html页面中。但它无法奏效?有什么想法吗?

更新1:我的源代码如下:

WL.init({ client_id: clientId, redirect_uri: redirectUri });

WL.login({ "scope": "wl.skydrive wl.signin" }).then(
    function(response) {
        openFromSkyDrive();
    },
    function(response) {
        log("Failed to authenticate.");
    }
);

function openFromSkyDrive() {
    WL.fileDialog({
        mode: 'open',
        select: 'single'
    }).then(
        function(response) {
            log("The following file is being downloaded:");
            log("");

            var files = response.data.files;
            for (var i = 0; i < files.length; i++) {
                var file = files[i];
                log(file.name);
                WL.download({ "path": file.id + "/content" });
            }
        },
        function(errorResponse) {
            log("WL.fileDialog errorResponse = " + JSON.stringify(errorResponse));
        }
    );
}

function log(message) {
    var child = document.createTextNode(message);
    var parent = document.getElementById('JsOutputDiv') || document.body;
    parent.appendChild(child);
    parent.appendChild(document.createElement("br"));
}

然后我点击按钮,它会显示一个弹出窗口以登录Onedrive。我填写用户名和密码,然后弹出窗口仍显示在redirectURI中。文件选择器不显示。
抱歉,我的第一个问题。

1 个答案:

答案 0 :(得分:0)

尝试登录后,您在弹出窗口中看到了什么?您是否可以确认注册应用程序时定义的重定向URI与托管选择器的index.html页面相同?