Nikita
все фреймворки примерно одинаковые по перфу будет, а проседать у тебя бизнес логика будет, IO к базе и кешекам, сама базы и кешеки, но не фреймворк
Nikita
зато с супер-перфоманс фреймворком ты намучаешься с низкоуровневыми интерфейсами, вместо написания бизнес-логки
Nook
Если так к этому относиться, то можно закрывать v8, node.js и вообще всем в дворники уходить
Vlad
Обоснуй
лол. как насчёт нет? нет особо цифр, ни аналитики, ни предложений. ни ссылок для дальнейшего чтения
Nook
HAPI чтоли используешь?
Nikita
ноуп, надо смотерть, что тебе подходит, на чем удобно будет написать проект.
Ни один из существующих фреймворков не делает слишком уж хуйни, чтобы просесть по перфу и уткнуться непосредственно в фреймворк
Nikita
hapi - гуано еще то))
Nikita
у них у же 20 версия наверное?
Андрей
hapi апишку меняют постоянно
Nook
express.js не обновляется уже
Андрей
я проект сделал на нём, а затем обновил ноду а там всё задепрекейчено.. Обновил хапи и проект перестал работать.. Починка дело муторное.. так и висит проект на старой ноде
Vlad
Evgeny
Я не люблю экспресс за его ограниченность и неумность - все делать самому и руками
Evgeny
И люблю хапи за хорошую продуманность и универсальность
Nikita
угу, это низкоуровневый фреймворк. с другой стороны для ряда задач он вполне подходит
Nikita
Evgeny
Как только на нем начинаешь делать что-то скоро оказывается что пора делать свой поверх. Опять
Nikita
ну да, чутка приходится
Nikita
чем-то на react + redux похоже. для кучи проектов это подходит
Evgeny
Надо или перестать его назвать фреймфорком общего назначения и начать называть удобной оберткой поверх хттп, либо перестать есть кактус
Vladimir
А кто называет то?
Evgeny
В этом чате? Все подряд
Nikita
ну начинается)) давайте обсудим, что либа, а что фреймворк)
Максим
фреймворк общие задачи
Максим
либа узконаправленные
Evgeny
Хапи - фреймворк, экспресс - либа. Дикси
Vladimir
Nikita
Evgeny
Да вроде нет
Возможно я неверно трактую дискуссии по результатам которых всегда и везде советуют экспресс
Nikita
посоветуешь hapi, а посредине проекта у него API все сломают.
У меня такое было, причем 2 раза))
Nikita
вы четкие критерии выведите либы/фреймворка, тогда и спорить не прийдется.
Nook
«Фреймворк» отличается от понятия библиотеки тем, что библиотека может быть использована в программном продукте просто как набор подпрограмм близкой функциональности, не влияя на архитектуру программного продукта и не накладывая на неё никаких ограничений.
Nook
lodash
Nook
Библиотека
Nook
Например
Pavel
всем привет, писал ли кто ботов для телеграмма? как вывести список всех доступных команд?
Nikita
в чатике по /?
Славик
где?
Nikita
если в чатике - к @botfather обратись, он тебя научит)
Pavel
ну имеется ввиду не / и там список
Pavel
а к примеру по /help
Pavel
/help
Group Butler [beta]
Start me to get the list of commands
Pavel
это с сервака ответ должен приходить о списке доступных методов захардкоженый?
Vitaliy
Pavel
а есть ли какие-то методы получения списка доступных команд с сервака?
Vitaliy
Через что?
Vitaliy
Хотя, не важно. Нет
Farrux
Всем привет. у меня API на express.js. когда в приложение происходит uncaught Exception как можно отправить response в json формате ?
Farrux
или как можно уловить краш в express.js и отправит response
Vlad
ловить ошибку и отправлять в джейсон формате?
Farrux
да
Vlad
тогда в чём вопрос?
Pavel
в catch отлавливай и отправляй куда надо
Pavel
либо middleware запили
Pavel
app.use((ctx, next) => {если ок next() иначе ctx.status = нужный тебе ctx.body = {message: 'error', error: ctx.error}})
Anonymous
по-моему это koa, а не express, не?
Pavel
смысл тот же примерно
Yan👀
ну разница невелика)
Pavel
помоему это псевдокод )
Anonymous
app.use((req, res, next) => { try { next(); } catch (err) { res.json(err); } });
Anonymous
для полноты картины)
Pavel
в ctx есть и res и req, хотя это не важно. главное, чтобы человек понял идею
Nook
и request и response
Farrux
Pavel
ну смотря что у тебя в контроллерах, если роуты, то да
Farrux
у меня в контроллерах вот так:
someModel.someMethod(params, function(err, response) {
if (err) return res.serverError(err);
res.json(response);
});
Pavel
ну так верни в скобках {message: 'Error', error: err}
Pavel
вместо err
Pavel
постой, как ты удаляешь сообщения из телеграмма?) я тоже так хочу)
Farrux
если кто то написал
someModel.someMethod(params, function(err, response) {
if (err) return res.serverError(err);
aaa
res.json(response);
});
Pavel
если тебе не надо кидать ошибку сервака то вместо serverError все так же кидай res.json({message: 'Error', error: err})
Farrux