Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 30.04.2015, 00:30
Интересующийся
Отправить личное сообщение для :before Посмотреть профиль Найти все сообщения от :before
 
Регистрация: 14.09.2014
Сообщений: 11

передача буфера в сервер (в response)
привет всем!
в общем, посмотрел я немножко Ильи скринкаста, зашел в ноду, и.. наворотил делов
а вот как, решил распределить функционал по модулям, чтоб сервер был в server.js, а файловая система в files.js. немного подумав, выделил в safe.js часть, где проверяется request на порядочность и тд.

в сервере сделал страшную функцию, которую делать нельзя:
//server.js:
server.on('request', function(req, res) {
  // app.get - управляется с модулями, кому че, да как, колбек отдает в reader
  app.get(req, function(err, resObj) { 
    if (err) return console.error(err);
    res.writeHead(resObj.head);
    res.end(resObj.body);
  });
});

//files.js:
exports.reader = function(reqSafe, callRes) {
  var resObj = new Object(),
      file = fs.readStream(reqSafe);
  resObj.head = "200,{...}";
  resObj.body = "";
  file.pipe(resObj.body);
  callRes(null, resObj);
};

и пайп не работает так. убрал функцию в сервере, просто поставил res, и в files.js тоже, все норм, а в объект не хочет.
а хочется, чтоб отправлялись заголовки нужные, и все такое.
буду благодарен за помощь

Последний раз редактировалось :before, 30.04.2015 в 00:37.
Ответить с цитированием
  #2 (permalink)  
Старый 30.04.2015, 09:21
Аватар для Gozar
Отправить личное сообщение для Gozar Посмотреть профиль Найти все сообщения от Gozar
 
Регистрация: 07.06.2007
Сообщений: 7,504

:before,
Открой для себя Express иначе ты его почти один в один в итоге переизобретешь, тебе оно надо? Но если надо, то конечно делай. Потом расскажешь почему не работало
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
Ответить с цитированием
  #3 (permalink)  
Старый 30.04.2015, 11:21
Интересующийся
Отправить личное сообщение для :before Посмотреть профиль Найти все сообщения от :before
 
Регистрация: 14.09.2014
Сообщений: 11

не то, чтобы у меня сроки по сдаче проекта горели. я спрашиваю, чтоб узнать\понять в чем тут дело. да и если переизобрету, то хоть буду понимать как он работает
Ответить с цитированием
  #4 (permalink)  
Старый 30.04.2015, 13:18
Аватар для Gozar
Отправить личное сообщение для Gozar Посмотреть профиль Найти все сообщения от Gozar
 
Регистрация: 07.06.2007
Сообщений: 7,504

Сообщение от :before
переизобрету, то хоть буду понимать как он работает
Лень тратить время.
Сообщение от Gozar
расскажешь почему не работало
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
Ответить с цитированием
  #5 (permalink)  
Старый 30.04.2015, 14:13
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Цитата:
Открой для себя Express
Лучше Koa
__________________
kobezzza
code monkey
Ответить с цитированием
  #6 (permalink)  
Старый 30.04.2015, 14:57
Интересующийся
Отправить личное сообщение для :before Посмотреть профиль Найти все сообщения от :before
 
Регистрация: 14.09.2014
Сообщений: 11

ну, ребят. почему, а? никто чель не знает?
Ответить с цитированием
  #7 (permalink)  
Старый 30.04.2015, 15:23
Аватар для Gozar
Отправить личное сообщение для Gozar Посмотреть профиль Найти все сообщения от Gozar
 
Регистрация: 07.06.2007
Сообщений: 7,504

Сообщение от :before
ну, ребят. почему, а? никто чель не знает?
Сообщение от Gozar
Лень тратить время.
Есть гораздо больше приятных бессмысленных занятий, чем ковыряться в твоём коде, который и тебе то не особо нужен.
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
Ответить с цитированием
  #8 (permalink)  
Старый 30.04.2015, 16:29
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

Цитата:
var resObj = new Object()
resObj.head = "200,{...}";
resObj.body = "";
Литералы для лохов?
let resObj = {
  head: "200,{...}",
  body: ""
}


Цитата:
пайп не работает
А должен? Иди пересмотри выпуски о сигнатуре метода pipe, его применении и отличии потоков от строк (номера 25-26).

Последний раз редактировалось Erolast, 30.04.2015 в 16:31.
Ответить с цитированием
  #9 (permalink)  
Старый 30.04.2015, 23:31
Интересующийся
Отправить личное сообщение для :before Посмотреть профиль Найти все сообщения от :before
 
Регистрация: 14.09.2014
Сообщений: 11

Сообщение от Erolast Посмотреть сообщение
А должен? Иди пересмотри выпуски о сигнатуре метода pipe, его применении и отличии потоков от строк (номера 25-26).
Неа, не должен.
Я так и сделал, пересмотрел про pipe, все понял..
наверно реализация такого кода будет большим таким костылем, но я его все-равно потом удалю

Цитата:
Литералы для лохов?
let resObj = {
  head: "200,{...}",
  body: ""
}
да, так красивей

спасибо за внимание
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Передача html данных на сервер KomaLex AJAX и COMET 1 25.06.2013 06:22
Передача HTML кода на сервер через Ajax KomaLex AJAX и COMET 2 06.12.2012 15:28
Передача данных на другой сервер особым способом ditasandditas AJAX и COMET 4 11.10.2011 17:19
Передача данных полученных из grid на сервер xalt ExtJS 5 22.09.2011 10:41
передача JSON на сервер mikeles AJAX и COMET 0 04.03.2011 11:28