使用javascript api从dropbox显示图像

时间:2017-03-31 09:50:31

标签: javascript dropbox dropbox-api dropbox-js

我尝试创建一个可以通过Javascript API在Dropbox文件夹中显示所有图片的页面。

我能够正确设置我的Dropbox应用程序,并且能够获取文件列表。

我被困在这个部分,以获得一个我可以用来以HTML格式显示图片的网址。我尝试了以下代码,暂时尝试获取1个图像的URL:

dbx.filesListFolder({path: ""})
    .then(function(response) {
        console.log(response);
        // ↑ this works!
        dbx.filesGetThumbnail({path: response.entries[0].path_display, format: "jpeg", size: "w64h64"})
            .then(function(result) {
                window.data = result;
                console.log(result);
            })
        // closures and rest of code...

检查window.dataconsole.log(result),我似乎无法找到我可以在HTML中使用的任何网址。

是否有任何指示让我朝着正确的方向前进?我还是Dropbox Javascript API的新手。

2 个答案:

答案 0 :(得分:2)

对于其他人也有同样的问题:) 现在,Dropbox JS Api会返回base64图像数据,因此您需要执行以下操作:

  var img = document.createElement('img');
  img.src = "data:image/jpg;base64, " + <data returned>;

data:image/jpg取决于您请求的图像类型

答案 1 :(得分:0)

感谢Greg

filesGetThumbnail方法本身不会返回缩略图数据的URL。它直接返回原始缩略图数据。如果您希望在浏览器中本地显示URL,您可能需要这样的内容:

dbx.filesGetThumbnail({"path": "/test.jpg"})
  .then(function(response) {
    var img = document.createElement('img');
    img.src=window.URL.createObjectURL(response.fileBlob);
    document.body.appendChild(img);
  })
  .catch(function(error) {
    console.log("got error:");
    console.log(error);
  });

顺便说一句,您可以找到所有记录的{vi JavaScript SDK方法{。{3}}。