107 votes

Pourquoi je ne peux pas faire <img src="C:/localfile.jpg"> ?

Cela fonctionne si le fichier html est local (sur mon lecteur C), mais pas si le fichier html se trouve sur un serveur et que le fichier image est local. Pourquoi donc?

Des solutions possibles?

67voto

Bjorn Tipling Points 16243

Ce serait une faille de sécurité si le client pouvait demander des fichiers de système de fichiers locaux puis utiliser JavaScript pour déterminer le contenu de ces fichiers.

La seule solution consiste à créer une extension dans un navigateur. Les extensions Firefox et les extensions IE peuvent accéder aux ressources locales. Chrome est beaucoup plus restrictif.

34voto

AndreDurao Points 1121

ne devriez-vous pas utiliser "file: // C: /localfile.jpg" au lieu de "C: /localfile.jpg"?

29voto

Newtang Points 1659

Les navigateurs ne sont pas autorisés à accéder au système de fichiers local, sauf si vous accédez à une page HTML locale. Vous devez télécharger l'image quelque part. S'il se trouve dans le même répertoire que le fichier html, vous pouvez utiliser <img src="localfile.jpg"/>

18voto

C: n'est pas un schéma d'URI reconnu. Essayez file://c|/... place.

2voto

Jack Kelly Points 9640

L'observation de Newtang concernant les règles de sécurité mises à part, comment saurez-vous que toute personne visitant votre page aura les bonnes images à c:\localfile.jpg ? Tu ne peux pas. Même si vous pensez que vous pouvez, vous ne pouvez pas. Cela présuppose un environnement Windows, pour une chose.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X