2015-06-23 2 views
0

В принципе, я создаю логику сервера, которая изначально проверяет, действительно ли фиксация пользователя на сервере уже обновлена.Я хочу интегрировать прослушиватель событий в этот код

Это то, что я в настоящее время:

var request = require("request"); 
var serversha1; 

request("[URL REDACTED]", function(error, response, body) { 
    serversha1 = body; 
    console.log("Server sha1 is " + body); 
    if (serversha1 == filesha1) { 
    console.log("File sha1 is " + filesha1); 
    console.log("The files on the server are up to date."); 
    } else { 
    console.log("File sha1 is " + filesha1); 
    console.log("The files aren't up to date."); 
    }; 
}); 

var FileHasher = require("./modules/FileHasher"); 
var filesha1 = FileHasher(process.argv[2]); 

FileHasher это функция, которая принимает имя файла и содержимое файла и хэши его, а затем возвращает хэш.

Я хочу изменить это так, чтобы код запускался при активации события «commit». «Commit», вероятно, должно быть настраиваемым событием, если я правильно разбираюсь в событиях и слушателях. Как только этот код услышит «commit», он должен начать работать, но не раньше этого. Я довольно новичок в node.js, поэтому я очень благодарен за помощь в этом.

+0

Откуда это событие? – Brad

+0

События в узле довольно хорошо документированы http://nodejs.org/docs/v0.4.7/api/events.html. Можете ли вы быть более конкретным в своем вопросе? – Matt

+0

Спасибо за ссылку! В основном я создаю систему синхронизации файлов с Dropbox-esque. Предположим, что этот код должен делать, когда пользователь нажимает параметр фиксации на графическом интерфейсе рабочего стола, этот код должен понимать, что GUI был нажат, а затем проверить sha1 файла (ов), который пользователь нажимает на sha1 того, что уже есть на сервере. Поэтому этот код должен ждать, пока пользователь активирует событие «push», а затем запустит код. Я пытаюсь реализовать это через прослушиватели событий. –

ответ

0

Это было довольно просто - я просто использовал прослушиватели событий, а затем переключил его, чтобы запускать нажатия кнопок при добавлении в графический интерфейс.