permet de dire que vous avez une application Web utilisant NDEJS et ReactJS. Les deux travaillent sur votre machine locale. NODEJS accepte certains fichiers sélectionnés dans GUI ReactJS avec un téléchargement simple de fichier. Comme ceci: p>
Vous voulez transmettre ce fichier sur votre NDEJS afin qu'il effectue de grosses opérations de données. Toutefois, étant donné que les navigateurs n'ont pas accès au système de fichiers du client, vous ne pouvez pas prendre le chemin absolu du fichier sélectionné. Vous ne pouvez donc pas informer votre serveur Nodejs sur le fichier. Quelle devrait être la meilleure approche pour cela? P>
J'ai essayé de lire le fichier avec réaction, puis écrivez-le sur un chemin où Nodejs sait déjà, mais cela ne me semble pas une meilleure approche. P>
3 Réponses :
C'est assez simple. Lorsque vous téléchargez un fichier comme , vous obtenez un blob de fichier, vous pouvez envoyer ce blob au serveur à l'aide de données d'API de repos ou d'analyse, puis peut transmettre ces données sur le serveur. P > p>
Pouvez-vous élargir votre réponse s'il vous plaît? Qu'est-ce que cela signifie "Télécharger un fichier à l'aide de tag"? Un exemple serait génial!
Si votre application sera toujours assis sur votre machine locale, une application de bureau via Electron sera une approche valide (comme IdMean remarqué). Là, vous pouvez utiliser le module NODEJS FS code> pour fonctionner avec des fichiers même dans le fronchon, qui est activé via la communication inter-processus au backend.
Sinon, le serveur Nodejs sera assis sur Internet à l'avenir, télécharger le fichier et l'enregistrera via Nodejs-Server est probablement la meilleure approche. P>
Ce n'est pas possible pour un navigateur d'obtenir l'URL absolue d'un fichier téléchargé. Ce serait une violation de la sécurité. P>
Vous ne pouvez donc pas envoyer le chemin de fichier absolu et le lire via Si votre application fonctionne toujours en local, vous pouvez également créer le dossier de téléchargement prédéfini selon EXEMPLE fs code> dans le nœud. Vous pouvez transmettre le à partir du fichier nœud.js code> ou utilisez le bureau alternatif comme Electron code> . P>
(C: / Téléchargements) CODE> IN Node.js code> et TOUJOURS télécharger des fichiers de Le même dossier, envoi du nom de fichier code> à partir de client.so Si vous sélectionnez un fichier avec nom a.jpg code>, votre nœud.js code> code local Peut utiliser le FS code> pour lire depuis le chemin c: /townloads/a.jpg code> p>
Pourquoi avez-vous besoin du chemin de fichier absolu pour télécharger un fichier sur le serveur?
"Les deux travaillent sur votre machine locale" Si c'est toujours le cas, pourquoi ne pas construire une application de bureau avec E.G. Électron?
@jenilchristo Bonjour, il n'y a pas d'auditeur dans mon nodejs qui attend un fichier. Et je ne pouvais pas décider si mon application fonctionnera toujours sur la machine locale avec Nodejs et ReactJS. J'ai juste besoin d'une trajectoire absolue du fichier qui réside dans quelque part que Nodejs peut lire avec simple var fs = nécessite ('FS');
@idmean Bonjour, merci, je l'ai regardé et cela peut être une bonne solution pour mon cas. Mais toujours curieux s'il existe un moyen simple d'y parvenir sans perdre son support de navigateur.
Si vous persistez dans l'application Web, dites votre framework back-end (ExpressJ / Adonisjs / ...)