filepicker.io - 易于实现

时间:2015-01-30 17:16:43

标签: javascript filepicker.io

我有一个网站btstats.com,提供以下服务:

“它从'Bluescan 4.0 Scanner for Android'导入JSON文件并生成图表和统计信息”。

我在我的网站上使用这个简单而优雅的代码实现了Dropbox Chooser,以提供Dropbox提供的功能:

<script type="text/javascript">
document.getElementById('dropbox-bt').onclick = function()
{
    Dropbox.choose
    ({
    linkType: 'direct',
    extensions: ['.json'],
    multiselect: false,
    success: function (files)
    {
        var dbSelected = "File selected: ";
        var filenamePanel = document.getElementById('filenamePanel');
        filenamePanel.textContent = dbSelected + files[0].name;

        var postLink = files[0].link;
        document.getElementById('postLink').value = postLink;

        var postName = files[0].name;
        document.getElementById('postName').value = postName;   
    }
  });
};
</script>

我喜欢上面的代码是它很小,并提供了文件链接和文件名。

我正在考虑实施filepicker.io,因此我可以向用户提供更多云存储选项。

我找不到一个简单的方法将filepicker.io的窗口添加到我的网站,提供这些选项。首先,我想使用按钮实现它,我在他们的文档中找不到getElementById的示例。

有人可以根据提供文件链接和文件名的Dropbox实现来指导我或编写一个小的filepicker.io示例吗?我不是Javascript专家。

提前致谢。

1 个答案:

答案 0 :(得分:1)

filepicker代码非常相似:

filepicker.setKey('yourApikey');

document.getElementById('filepickerBtn').onclick = selectFile;

function selectFile(){
    filepicker.pick(
        // picker options
        {
            extension: '.json',
        },
        onSuccessCallback
    );
};

function onSuccessCallback(Blob){
    document.getElementById('postName').textContent = Blob.filename;
    document.getElementById('postlink').textContent = Blob.url;
    document.getElementById('results').textContent = JSON.stringify(Blob);            
};

示例HTML代码:

<div class="container">
    <h3>Filepicker example</h3>
    <p>
        <button id="filepickerBtn" class="btn btn-primary">
            Select json file
        </button>
    </p>
    <p>Filename: <span id="postName"></span></p>
    <p>Filelink: <span id="postlink"></span></p>
    <p>Results: <pre id="results">Upload file to see results</pre></p>
</div>

工作示例here