@nodejs_ru

Страница 1384 из 2748
Usman
11.12.2017
08:28:58
Ребята, не знаете почему сессия доступна только внутри этой функции только exports.login = function(req, res, next) { Users.login(req.body, function(err, user) { if(err) { return next(err); } req.session.user_id = user._id; console.log(req.session) res.send(true); }); };

Kulagin
11.12.2017
08:29:30
а где она еще должна быть доступна?

Usman
11.12.2017
08:30:04
а где она еще должна быть доступна?
exports.profile = function(req, res, next) { console.log(req.session) res.end(); }; тут выдает undefined

Google
Kulagin
11.12.2017
08:30:47
как инициализируется?

Cenator
11.12.2017
08:31:20
как у тебя мидлвары вызываются

Usman
11.12.2017
08:32:00
как инициализируется?
в файле server.js app.post('/login', urlencodedParser, usersController.login);

как у тебя мидлвары вызываются
в файле server.js app.post('/login', urlencodedParser, usersController.login);

Kulagin
11.12.2017
08:32:42
а где тут инициализация сессии?))

Usman
11.12.2017
08:33:00
а где тут инициализация сессии?))
const sessionStore = require('./lib/sessionStore'); app.use(session({ secret: config.session.secret, key: config.session.key, resave: config.session.resave, saveUninitialized: config.session.saveUninitialized, cookie: config.session.cookie, store: sessionStore }));

Usman
11.12.2017
08:36:33
это стоит до обработчиков запроса?
там вот это const sessionStore = new MongoStore({ url: config.basedata });

проверяй порядок
если сохранить сессию вот так, то работает app.get("/login", function(req, res, next) { req.session.id = req.session.id + 1 || 1; }

Pavel
11.12.2017
09:03:58
парни я установил ноду через nvm версию 9.2.1 , но мне нужна другая , как мне поменять через nvm её?

Google
Дмитрий
11.12.2017
09:05:00
nvm install номер нужной версии, потом nvm use и тоже номер нужной версии

Pavel
11.12.2017
09:05:34
спс

Алексей
11.12.2017
09:12:36
Erving
11.12.2017
09:35:08
подскажите, пожалуйста, это нормально, что простенький сервер, опрашивающий каждые 5 секунд mongo (достает массив в 100-200 элементов), сравнивающий с примерно таким же массивом, после нескольких циклов записывающий в mongo новые элементы, и отдающий каждые 5 секунд сопоставимый массив на фронт, — что это всё стремится занять 1,5Гб памяти? читал, что вроде как для ноды это по умолчанию норм. поставил ограничение на old_space, теперь gc чаще срабатывает и всё держится в рамках 500Мб. Но откуда вообще такие цифры? Нагрузка же небольшая и всего несколько массивов

Anton
11.12.2017
09:35:13
Народ, есть тру либа для распознования штрих кодов?

Erving
11.12.2017
09:38:14
если покажите, что по теме почитать стоит, тоже буду благодарен

Erving
11.12.2017
09:40:37
А можно код?
там несколько модулей и... вам оно надо, копаться в этом?)

Работа gc достаточно дорогая, и если есть свободная память то не зачем напрягаться
да, понимаю, но памяти как раз нет, у меня free аккаунт на heroku)

Mikhail
11.12.2017
09:45:05
там несколько модулей и... вам оно надо, копаться в этом?)
Я бы посмотрел, как на запросах к БД можно 1.5 ГБ съесть

там несколько модулей и... вам оно надо, копаться в этом?)
Я помню, как в молодости на каждый запрос выполнял db.open(), а потом db.close() Вот это больно было

Erving
11.12.2017
09:56:03
Я бы посмотрел, как на запросах к БД можно 1.5 ГБ съесть
есть такое, надо поправить, спасибо)

Mikhail
11.12.2017
09:59:31
есть такое, надо поправить, спасибо)
Вы через mongoose с БД работаете?

Erving
11.12.2017
10:00:15
BlackGopher
11.12.2017
10:03:23
ребят, немного оффтопа. Не подскажите пожалуйста, а апи с апи у одноклассников совсмем все плохо или есть ресурс с нормальным описанием?

Denis
11.12.2017
10:14:40
нет, а что?
А то бы порекомендовали .lean() использовать

Mikhail
11.12.2017
10:21:51
нет, а что?
Там есть более удобный способ подключения к БД. Секунду

нет, а что?
Самый верхний пример: https://mongodb.github.io/node-mongodb-native/api-generated/db.html А то на гитхабе у них там не очень удобный способ описан

Erving
11.12.2017
10:29:18
Самый верхний пример: https://mongodb.github.io/node-mongodb-native/api-generated/db.html А то на гитхабе у них там не очень удобный способ описан
а я через MongoClient.connect подключаюсь, где курсор в коллбеке возращается. это плохая практика?

Google
Mikhail
11.12.2017
10:30:51
а я через MongoClient.connect подключаюсь, где курсор в коллбеке возращается. это плохая практика?
Нет. Но мне кажется, что намного удобнее, когда db передаётся не через коллбэк

Erving
11.12.2017
10:31:03
MongoClient.connect(urlmongo, function(err, db) { if (err) throw err; db.createCollection("collect", function(err, res) { if (err) throw err; console.log("Collection created!"); db.close(); });

Mikhail
11.12.2017
10:34:06
MongoClient.connect(urlmongo, function(err, db) { if (err) throw err; db.createCollection("collect", function(err, res) { if (err) throw err; console.log("Collection created!"); db.close(); });
Лично мне не очень удобно так подключаться. Как вы потом будете использовать db во внешнем коде?

Michael ?
11.12.2017
10:37:50
Вот кстати не до конца понятно, как прокидывать объект БД в другие файлы

Может я, конечно, его как-то криво экспортировал, но у меня в контроллерах undefined был

В том же файле, где выполняется подключение - всё норм, объявляем переменную снаружи подключения, при подключении её переопределяем и всё пашет

Erving
11.12.2017
10:39:03
Если вы выполняете это при каждом запросе к БД, то это плохо
верно, приходится каждый раз переподключаться. да, не очень-то получается

Michael ?
11.12.2017
10:39:07
Условие - пользоваться только нативным драйвером ?

Mikhail
11.12.2017
10:39:37
верно, приходится каждый раз переподключаться. да, не очень-то получается
Один раз в коде нужно выполнить db.open() Вообще нода при вашем подходе где-то после 12 подключения должна в консоль сыпать сообщение об утечке памяти

Mikhail
11.12.2017
10:56:24
ну, костыль с настройкой gc помог, кстати. но да, надо по уму сделать
Надеюсь, вы не рассказали уже всем коллегам и друзьям, что ни в коем случае нельзя использовать ноду, потому что она течёт при банальных запросах к БД и пр.

Erving
11.12.2017
10:58:59
я слышал такое в одной компании, там у них один раз один программист пересел с php на ноду, написал что-то, у них память потекла, после чего техдир ввел строгий запрет на ноду (даже упоминать нельзя)

Это ирония была :)
а я взял, и серьезно ответил, с меня не убудет)

?
11.12.2017
11:00:10
часто деятели от других платформ и языков кончик носа сунут, утекающий кусочек говнокода напишут и потом трезвонят налево и направо об ущербности ноды и т.п.. Ну вот как с тем самым пэхапешником и техдиректором. :)

Vladimir
11.12.2017
11:36:24
@admin

Nikolay
11.12.2017
11:36:43
/report

Google
Anton
11.12.2017
11:40:44
У меня есть middleware, которая чекает роль юзера. Хочу, чтобы кроме юзеров из списка остальные не имели доступ к приложению. Нормально ли не вызывать next в мидлваре в этом случае? Речь про telegraf, но в ноде думаю мидлваря работает также. В общем нормально ли не вызывать next() ?

Morsik
11.12.2017
11:42:42
@Atassis

Admin
ERROR: S client not available

Yaroslav
11.12.2017
11:43:14
/report

Andrey
11.12.2017
11:57:39
пошли обедать ?

Morsik
11.12.2017
12:03:44
пошли

Илья
11.12.2017
12:09:59
Как этот запрос curl -d '[{"firstname": "barack", "lastname": "obama"}, {"firstname": "mitt", "lastname": "romney"}]' -H 'Content-Type: application/json' http://127.0.0.1:5000/people будет выглядеть в строке браузера?

http://127.0.0.1:5000/people?…

Cenator
11.12.2017
12:10:39
fetch()

Илья
11.12.2017
12:11:07
?

Cenator
11.12.2017
12:11:08
http://127.0.0.1:5000/people?…
если сервер не принимает urlencoded, то не прокатит

у тебя тип жсон

1nd2rd3st
11.12.2017
12:11:14
Postman

Илья
11.12.2017
12:11:21
Да

я в нем сижу

хорошо, спрошу конкретнее, как из JS запросить?

Cenator
11.12.2017
12:12:05
фетчем

Илья
11.12.2017
12:12:48
прошу, немноооооожечко понятнее

Google
Илья
11.12.2017
12:13:05
если бы я знал все я бы не спрашивал)

Cenator
11.12.2017
12:13:11
открываешь доку fetch, там же все интуитивно

Илья
11.12.2017
12:15:18
тогда все понятно, через Ajax

мне казалось это все GET

и можно из браузера

Michael
11.12.2017
12:16:28
какой браузер? это чат про node.js!

Илья
11.12.2017
12:16:42
началось

Alexander
11.12.2017
12:16:50
Почалось

Илья
11.12.2017
12:17:16


dexofan
11.12.2017
12:42:37
Сервер должен делать запрос к стороннему api раз в какой-то промежуток времени и согласно полученному ответу добавлять его в базу mongodb. Как лучше реализовать это (действие через промежуток времени)?

Michael ?
11.12.2017
12:44:17
cron

Ну, это если эти данные надо просто запихать в базу, ничего с ними не делая внутри сервака

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