2016-01-26 2 views
0

je tente de charger une série d'images d'une commune Dropbox dossier comme ceci:Javascript - Chargement Les images de Dropbox retourne 403 Erreur interdite

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

Le dossier est partagé, et Dropbox dit que « les gens avec lien peut voir'. J'ai essayé de faire la même chose avec Google Drive, mais j'obtiens une erreur d'origine croisée.

EDIT: J'ai juste essayé de partager un des fichiers individuellement, et cela a fonctionné. DOIS-je maintenant passer par et faire cela pour chaque fichier dans le dossier? Je pensais que si je partage juste le dossier, je devrais avoir accès à tout son contenu.

MESSAGE D'ERREUR:

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

Y a-t-il un nom devant l'extension ".png"? Si vous mettez manuellement la valeur de 'sprt.src' dans votre navigateur, pouvez-vous voir l'image? – Riaz

+2

Um, la ligne src ci-dessus n'a pas de sens ... Pourquoi y a-t-il une virgule? (deviner la faute de frappe). Où obtenez-vous une erreur d'origine croisée? Le chargement d'une image ne provoque pas cela. – epascarello

+0

Ouais c'était des fautes de frappe. L'erreur se produit lorsque j'essaie d'éditer les données d'image. Mais dropbox ne me laisse même pas charger une image du tout. Lorsque je mets manuellement l'URL dans mon navigateur, je reçois toujours un 403, y a-t-il un problème avec dropbox? – user3024235

Répondre

0

Il semble que le lien partagé d'origine que vous aviez été:

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

Ceci est un lien partagé pour un dossier. Notez que vous ne pouvez pas simplement le modifier directement pour obtenir des liens partagés pour des fichiers individuels à l'intérieur de ce dossier, ce qui est ce que vous semblez essayer dans votre question.

Pour obtenir les fichiers individuels, vous avez quelques options:

  1. obtenir manuellement les liens partagés pour chaque fichier via le site Web Dropbox, comme vous l'avez mentionné.
  2. Utilisez l'API individuellement mais par programme obtenir des liens partagés pour chaque fichier: https://www.dropbox.com/developers/documentation/http/documentation#sharing-create_shared_link_with_settings
  3. Utilisez l'API pour télécharger les fichiers dans le lien partagé d'origine en spécifiant le chemin dans le dossier: https://www.dropbox.com/developers/documentation/http/documentation#sharing-get_shared_link_file Ceci est probablement le plus proche de ce que vous » re cherche.
0

Je ne pense pas que cela a beaucoup à voir avec JavaScript. Aller incognito et jetez un coup d'oeil à lui parce que tout ce que je peux voir est un 403 error de mon navigateur.

+0

Ouais c'est quand j'essaie de passer par le lien de partage de dossier, cela fonctionne quand je partage le fichier individuel, mais ce n'est pas ce dont j'ai besoin. – user3024235