filepicker.io — easy implementation

强颜欢笑 提交于 2019-12-11 23:46:35

问题


I have a site, btstats.com, that provides the following service:

"It imports a JSON file from 'Bluescan 4.0 Scanner for Android' and generates graphs and stats".

I implemented Dropbox Chooser on my site with this simple and elegant code to provide the functionality, provided by 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>

What I like about the code above is that it is small and provides me the file link and file name.

I'm thinking about implementing filepicker.io, so I can provide to users more cloud storage options.

I couldn't find an easy way to add filepicker.io's window to my site that offers these options. First, I would like to implement it using a button, and I can't find on their documentation an example with getElementById.

Would it be possible for someone to guide me or write a small filepicker.io example based on my Dropbox implementation that provides the file link and file name? I'm not a Javascript expert.

Thanks in advance.


回答1:


The filepicker code is quite similar:

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);            
};

Sample html code:

<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>

And working example here



来源:https://stackoverflow.com/questions/28241179/filepicker-io-easy-implementation

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!