Vérifiez si un fichier existe localement en utilisant JavaScript uniquement
Je veux vérifier si un fichier existe localement, là où le fichier HTML se trouve. Il convient de JavaScript. JavaScript ne sera jamais désactivé. jQuery n'est pas bon mais peut faire.
En passant, je suis en train de titane application pour Mac, donc je suis à la recherche d'un moyen de protéger mes fichiers de personnes qui ont cliqué sur "afficher le contenu du paquet".
source d'informationauteur ExceptionSlayer
Vous devez vous connecter pour publier un commentaire.
Votre question est ambiguë, il y a donc plusieurs réponses possibles selon ce que vous êtes vraiment essayer de l'atteindre.
Si vous êtes à la développer comme j'imagine une application de bureau à l'aide de Titane, alors vous pouvez utiliser le système de fichiers du module getFile pour obtenir le fichier de l'objet, puis vérifier s'il existe à l'aide de la méthode exists.
Voici un exemple tiré de la Appcelerator site web:
Vérifier la méthode getFile la documentation de référence
Et la il existe la méthode de la documentation de référence
Pour ceux qui pensaient qu'il pose au sujet d'une habitude de développement Web de la situation, puis thse sont les deux réponses que j'aurais donnée:
1) vous voulez vérifier si un serveur de fichier existe.
Dans ce cas, vous pouvez utiliser une requête ajax essayer et obtenir le fichier et de réagir sur le reçu de réponse. Bien que, être conscient que vous ne pouvez trouver les fichiers qui sont exposés par votre serveur web. Une meilleure approche serait d'écrire un script côté serveur (par exemple, php) qui feraient le vérifier pour vous, donné un nom de fichier et l'appel de ce script via ajax. Aussi, sachez que vous pourrez très facilement créer un trou de sécurité dans votre application/serveur si vous n'êtes pas assez prudent.
2) vous voulez vérifier si un client-side fichier existe.
Dans ce cas, comme indiqué par d'autres, il n'est pas autorisé pour des raisons de sécurité (bien que IE permis dans le passé via ActiveX et les Scripts.FileSystemObject classe) et c'est très bien comme ça (personne ne veut de vous pour être en mesure de passer par leurs fichiers), donc l'oublier.
Depuis Kranu' utilement conseille " La seule interaction avec le système de fichiers est avec le chargement des fichiers js . . .', qui suggère de le faire avec la vérification des erreurs, permettrait au moins de vous dire si le fichier ne pas existent - ce qui peut être suffisant pour vos besoins?
À partir d'un local de la machine, vous pouvez vérifier si un fichier ne existe pas en essayant de charger un script externe puis de vérifier, pour une erreur. Par exemple:
Quelques notes...
Vous pouvez utiliser cette
Javascript ne peut pas accéder au système de fichiers et de vérifier l'existence. La seule interaction avec le système de fichiers est avec le chargement des fichiers js et les images (png, gif, etc).
Javascript n'est pas la tâche pour ce
Heureusement, il n'est pas possible (pour des raisons de sécurité) à l'accès côté client de système de fichiers à la norme JS. Certaines solutions propriétaires exister bien (comme Microsoft IE seul composant ActiveX).
Si vous voulez vérifier si le fichier existe à l'aide de javascript alors non, autant que je sache, javascript n'a pas accès au système de fichiers pour des raisons de sécurité..
Mais comme pour moi, il n'est pas assez clair qu'essayez-vous de faire..
Une alternative:
vous pouvez utiliser un "caché" élément applet qui implémente ce existe-vérifier à l'aide d'une action privilégiée de l'objet et de remplacer votre méthode de course en:
Un moyen que j'ai trouvé à faire c'est de créer une balise img et définissez l'attribut src pour le fichier que vous recherchez. Le onload ou onerror de l'élément img feu sur si le fichier existe. Vous ne pouvez pas charger les données à l'aide de cette méthode, mais vous pouvez déterminer si un fichier existe ou pas.
Essayez ceci: