Javascript - 从 Dropbox 加载图像 returns 403 禁止错误

Javascript - Loading Images from Dropbox returns 403 Forbidden Error

我正在尝试从共享 Dropbox 文件夹加载一系列图像,如下所示:

function getSprite(raw) {
    var sprt = new Image();
    sprt.crossOrigin = '';
    sprt.src = 'https://dl.dropboxusercontent.com/s/k1v7iv85vntx107/AABOD-CfE3A5sQo0RPPmRmmJa/ground1.png' + (raw ? '?raw=1' : '');
    return sprt;
}

文件夹已共享,Dropbox 表示 'People with Link can View'。我尝试对 Google 驱动器执行相同的操作,但在那里出现跨源错误。

编辑:我只是尝试单独共享其中一个文件,而且成功了。我现在是否必须对文件夹中的每个文件执行此操作?我想如果我只是共享文件夹,我应该可以访问它的所有内容。

错误信息:

GET https://dl.dropboxusercontent.com/s/k1v7iv85vntx107/AABOD-CfE3A5sQo0RPPmRmmJa/characters/triggerman/up.png?raw=1 403 (Forbidden)

我认为这与 JavaScript 没有太大关系。进入隐身模式并查看它,因为我只能从浏览器中看到 403 error

你原来分享的link好像是:

https://www.dropbox.com/sh/k1v7iv85vntx107/AABOD-CfE3A5sQo0RPPmRmmJa?dl=0

这是文件夹的共享 link。请注意,您不能直接修改它以获得该文件夹内单个文件的共享 links,但这似乎是您在问题中尝试的。

要获取单个文件,您有以下几种选择:

  1. 如您所述,通过 Dropbox 网站手动获取每个文件的共享 link。
  2. 使用 API 单独但以编程方式为每个文件共享 links:https://www.dropbox.com/developers/documentation/http/documentation#sharing-create_shared_link_with_settings
  3. 使用 API 通过指定文件夹内的路径下载原始共享 link 中的文件:https://www.dropbox.com/developers/documentation/http/documentation#sharing-get_shared_link_file 这可能最接近您要查找的内容。