我有一个网站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示例吗?我不是Java语言专家。

提前致谢。

最佳答案

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

09-19 07:25