@nodejs_ru

Страница 799 из 2748
Denis
28.05.2017
15:53:32
VSCode

Только прожорливостью лучше?

Дмитрий
28.05.2017
15:54:49
а ничего такого, просто нигде нормально не работает
Спокойно ставлю брейкпоинты в chrome remote в несколько сессий прямо поверх ts/flow

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

Google
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
Просто попробуйте и все поймёте, я знал таких убежденные идеевцев, и сам тоже таким был
спасибо за совет, я vscode использую еще с первой беты, ну и пишу на трех языках: python, js, go. а вот про idea я не говорил ни слова, потому что она для java

Вишневый чай
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
может в @MongoDBRussian ответят
Спасибо за ссылку!

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 своего проекта

Андрей
28.05.2017
19:42:01
Dmitry ?
28.05.2017
19:42:11
можно подробнее? подчепну для себя знания
res.status(500).send(err) отдаст клиенту стектрейс с указанием строк и методов в твоем коде. Это может быть опасно

Sasha
28.05.2017
19:42:57
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


А вот именно с бд проблемы появились

.send('500 error');
Это же вернет клиенту строку "500 error", а мне как бы сам код ошибки нужен

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

Андрей
28.05.2017
19:47:23
ну или можешь res.send(err.message)
Один хер не работает

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
не совсем понимаю о чём идёт речь

В идеале тебе надо переделать так, чтобы on error остался
А надо ли? В идеале ничего не сможет привести к on error

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

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
работы с бд в отдельный файл выноси, тогда неявных ошибок еще меньше будет :)

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

Страница 799 из 2748