Maison > interface Web > js tutoriel > Utilisez nodejs pour surveiller les modifications de fichiers et utilisez sftp pour les télécharger sur le serveur

Utilisez nodejs pour surveiller les modifications de fichiers et utilisez sftp pour les télécharger sur le serveur

高洛峰
Libérer: 2017-02-20 16:52:46
original
2018 Les gens l'ont consulté

Cet article présente principalement la méthode d'utilisation de nodejs pour surveiller les modifications de fichiers et d'utilisation de sftp pour les télécharger sur le serveur. Il est très bon et a une valeur de référence. Les amis qui en ont besoin peuvent s'y référer

Récemment. J'utilise React Express pour créer un site Web Mon propre outil (en fait un vivaneau d'île de chasse au trésor)

Ensuite, comme il doit être modifié fréquemment, il doit également être mis sur le serveur pour être testé. Je dois toujours utiliser Webpack et télécharger les fichiers manuellement, ce qui est très ennuyeux. J'ai donc simplement recherché et écrit un script capable de détecter les modifications de fichiers et de les télécharger automatiquement.

Tout d'abord, nous utilisons npm pour installer deux modules packagés par d'autres.


npm install ssh2-sftp-client
npm install gaze
Copier après la connexion


La fonction du premier module est de télécharger des fichiers via sftp,

La fonction du deuxième module Surveillez simplement les modifications des fichiers. Bien entendu, vous pouvez également utiliser le module fs fourni avec node.

L'utilisation de ces deux modules est ici : ssh2-sftp-client gaze

Après l'installation, la première étape consiste à surveiller les modifications du fichier, puisque mon fichier a été construit à l'aide de webpack. D'accord, donc il n'y aura que des modifications de fichiers, aucun fichier ne sera ajouté, vous n'avez donc besoin que d'utiliser modifié ici. Pour d'autres utilisations, veuillez vous référer au lien ci-dessus, ils sont tous similaires


<. 🎜 >
gaze([&#39;你的文件路径/*.*&#39;,&#39;还可以使用数组的方式监听多个文件夹/app.js&#39;], function(err, watcher) {
 let watched = this.watched();
 //监听文件的变化
 this.on(&#39;changed&#39;, (filepath) => {
 //romotePath是我文件的远程位置
 let romotePath = &#39;/root&#39; + filepath.substr(15);
 //put为上传文件的函数,下面会讲 
 put(filepath,romotePath);
 console.log(filepath + &#39; was changed&#39;);
 });
});
Copier après la connexion


Ensuite, nous commençons à écrire notre fonction pour télécharger des fichiers


function put(localPath,romotePath){
 let sftp = new Client();
 sftp.connect({
 host: &#39;你的服务器地址&#39;,
 port: &#39;端口,没改过的话是22&#39;,
 username: &#39;连接的用户名&#39;,
 password: &#39;密码&#39;
 }).then(() => {
 return sftp.put(localPath,romotePath);
 }).then(() =>{
 console.log("上传完成");
 }).catch((err) => {
 console.log(err, &#39;catch error&#39;);
 });
}
Copier après la connexion


Bon, n'oubliez pas d'introduire le module au début de notre dossier.


let Client = require(&#39;ssh2-sftp-client&#39;);
let gaze = require(&#39;gaze&#39;);
Copier après la connexion


Ensuite, expérimentons. Accédez à notre dossier webpack

Utilisez nodejs pour surveiller les modifications de fichiers et utilisez sftp pour les télécharger sur le serveur

et bien sûr, vous pouvez voir qu'il a été modifié et téléchargé. Le téléchargement prend du temps, soyez patient.

Utilisez nodejs pour surveiller les modifications de fichiers et utilisez sftp pour les télécharger sur le serveur

Je suis venu sur notre serveur, et bien sûr, la dernière heure de modification est devenue maintenant.

À partir de maintenant, je n’ai enfin plus besoin de télécharger un par un. A chaque fois que vous souhaitez le modifier directement. Ouvrez une fenêtre pour démarrer ce script et vous pourrez coder avec plaisir.

Ce qui précède est ce que l'éditeur vous présente, en utilisant nodejs pour surveiller les modifications de fichiers et en utilisant sftp pour télécharger sur le serveur. J'espère que cela vous sera utile. Si vous avez des questions, laissez-moi un message. message et l'éditeur répondra à temps. Je voudrais également vous remercier tous pour votre soutien au site Web PHP chinois !

Pour plus d'articles sur l'utilisation de nodejs pour surveiller les modifications de fichiers et le téléchargement sur le serveur à l'aide de sftp, veuillez faire attention au site Web PHP chinois !

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal