
Denis
28.05.2017
15:53:32
VSCode
Только прожорливостью лучше?

Дмитрий
28.05.2017
15:54:49

Aleksandr
28.05.2017
15:54:52
ну VSCode на электроне, он жрет тоже от души

Google

Aleksandr
28.05.2017
15:56:08

Roman
28.05.2017
15:56:57

Вишневый чай
28.05.2017
16:00:05
Привет вам из 2017

Aleksandr
28.05.2017
16:01:48

Вишневый чай
28.05.2017
16:07:35
убедительно!
Ну это же смешно, какая ещё idea. Все равно что доказывать что телеграм лучше скайпа.
Просто попробуйте и все поймёте, я знал таких убежденные идеевцев, и сам тоже таким был

Evgeny
28.05.2017
16:08:22
И чем же, интересно, скайп лучше ТГ?

Анатолий
28.05.2017
16:08:34

Evgeny
28.05.2017
16:08:45
Он убогий файлообменник

Вишневый чай
28.05.2017
16:09:18

Анатолий
28.05.2017
16:09:19
Это из ролика одного)

Google

Aleksandr
28.05.2017
16:09:53

Вишневый чай
28.05.2017
16:10:32
Idea это разработчик

Evgeny
28.05.2017
16:11:14

Aleksandr
28.05.2017
16:12:26
Idea это разработчик
разработчик там JetBrains, а IntelliJ Idea это первая их IDE для языка Java из которой идеологически выросли другие.

Enjoy the
28.05.2017
18:20:55
Кто-нибудь смотрел: "The Complete Node.js Developer Course 2.0" Производитель: udemy / Andrew Mead?

Vladimir
28.05.2017
18:32:44
@chicoxyzzy не видел годный туториал, как либу в wasm собрать и из js дергать?

Евгений
28.05.2017
19:09:23
Всем привет! использую mongoose, у одной из моделей объявляю
RequestSchema.methods = {
myfunc: function() {
...
this.myfunc()
... }
}
рекурсия не выполняется ЧЯДНТ ?

Никита
28.05.2017
19:19:50
всем привет! Вопрос немного не в тему, но может кто-то в курсе. есть впс на DO/VScale. там установлена MongoDB. как получить доступ к этой монге из интернета? просто ip_vps:port не катит

Vsevolod
28.05.2017
19:21:08
а там порт открыт соответствующий? может в панеле что надо сконфигурировать

v
28.05.2017
19:23:18
может быть, тут собака порылась

Евгений
28.05.2017
19:25:28
может в @MongoDBRussian ответят

Никита
28.05.2017
19:25:46

Vsevolod
28.05.2017
19:26:35
может сделано, чтобы рекурсии не было, вынеси код в функцию локальную и вызывай функцию? Давно с монгузом не работал

Евгений
28.05.2017
19:31:36
там все в порядке. решил. просто мне пора спать ?

Андрей
28.05.2017
19:34:19
Всем привет.
Нужна помощь. При выполнении этой части вылетает ошибка: "Error: Can't set headers after they are sent". Почему так происходит, я вроде еще не отправляю headers?

Dmitry ?
28.05.2017
19:38:10
Строчки с res.end(); попробуй убрать

Vsevolod
28.05.2017
19:38:43
Где-то отправляешь ответ дважды, res.end() не нужен вообще
https://expressjs.com/en/api.html#res.end

Google

Sasha
28.05.2017
19:39:54
Петю жалко
он - ошибка

Vsevolod
28.05.2017
19:40:17
Петр Ошибкин

Глеб
28.05.2017
19:40:41
Нельзя отправлять ошибку клиенту, если это смотрит мордой в интернет. Ты ж любому чуваку просто даёшь stacktrace своего проекта

Sasha
28.05.2017
19:41:18

Андрей
28.05.2017
19:42:01

Dmitry ?
28.05.2017
19:42:11

Андрей
28.05.2017
19:42:15

Sasha
28.05.2017
19:42:57

Андрей
28.05.2017
19:43:11

Vsevolod
28.05.2017
19:43:28
Мне всегда казалось, что res.send завершает запрос, так что, если я прав, то ты отправляешь ответ с помощь res.end и res.end

Vsevolod
28.05.2017
19:43:30
убери res.end
посмотри что будет

Sasha
28.05.2017
19:43:35

Vsevolod
28.05.2017
19:43:46
ну или можешь res.send(err.message)
если сообщение какие-то удобоваримые делать будешь

Андрей
28.05.2017
19:44:49
А вот именно с бд проблемы появились

Google

Sasha
28.05.2017
19:46:07
ну или можешь res.send(err.message)

Андрей
28.05.2017
19:47:23

Vsevolod
28.05.2017
19:47:54
скинь весь код хендлера

Андрей
28.05.2017
19:50:10
https://pastebin.com/pYXcj0f7

Dmitry ?
28.05.2017
19:50:59
Так у тебя наверное другие ивенты формы потом тоже срабатывают?

Андрей
28.05.2017
19:51:18
Кстати

Dmitry ?
28.05.2017
19:51:30
form.on('file') сначала, ты тут отправил ответ уже, а потом какой-нибудь form.on('end')

Admin
ERROR: S client not available

Dmitry ?
28.05.2017
19:51:36
Где ты опять посылаешь

Андрей
28.05.2017
19:51:41
срабатывает form.on('error')
Вот если убрать часть с бд и оставить только fs.rename() то всё работает нормально

Vsevolod
28.05.2017
19:52:59
form.on end наверное срабатывает
потому что ты сначала его делаешь

Dmitry ?
28.05.2017
19:53:18
Убери form.on('error' и form.on('end' для проверки, всё заработает

Vsevolod
28.05.2017
19:53:19
а потом у тебя бд отрабатывает

Андрей
28.05.2017
19:53:29
В самом конце срадатывает
form.on('error', function (err) {
console.log('An error has occured: \n' + err);
res.status(500).send(err);
return res.end();
});

Dmitry ?
28.05.2017
19:55:22
Сто раз уже сказали, что нельзя два раза отправлять ответ. А у тебя это происходит

Google

Андрей
28.05.2017
19:56:26
Но ведь у меня вначале if() и если он отдаёт ошибку то на этом всё заканчивается

Dmitry ?
28.05.2017
19:57:43
Ты сам говоришь что у тебя потом срабатывает on error (почему-то) который делает send второй раз

Андрей
28.05.2017
19:58:44
3 часа долбаться чтобы в итоге удалить 10 строк кода....

Dmitry ?
28.05.2017
19:59:49
В идеале тебе надо переделать так, чтобы on error остался

Vsevolod
28.05.2017
19:59:52
Так что ничего не заканчивается :)
Кстати, вместо ифов модер просто делать return res.send

Андрей
28.05.2017
20:01:06
не совсем понимаю о чём идёт речь

Vsevolod
28.05.2017
20:02:22
http://prntscr.com/fd4rx4

Андрей
28.05.2017
20:02:33

Vsevolod
28.05.2017
20:02:53
on error срабатывает если в форме ошибка или в чтении твоего файла
почитай доки от либы
когда он срабатывает

Глеб
28.05.2017
20:03:11
По хорошему ты не должен ничего делать с ошибкой внутри контроллера, а вызывать next(err), а вот в middleware для ошибок уже отрабатывать. Это позволяет избежать странных ситуаций.
Ну и 400/401 и т.д. ошибки должны отдаваться примерно так: next(new HttpError(...)).

Андрей
28.05.2017
20:06:36
Спасибо за разъяснения

Vsevolod
28.05.2017
20:08:07
работы с бд в отдельный файл выноси, тогда неявных ошибок еще меньше будет :)

Ilya
28.05.2017
20:18:22

Андрей
28.05.2017
20:31:45