
S̶m̶°̶O̶k̶™?✔️
05.08.2018
12:44:41
Я когда увидел, что там идет через сайт socket.io
Сразу вышел
Вчера видел видос, как он делал через ws ( npm i ws )

Сергей
05.08.2018
12:45:16

Google

Сергей
05.08.2018
12:45:25

S̶m̶°̶O̶k̶™?✔️
05.08.2018
12:45:34
Так я у вас спросить хотел
Как делают в современном нод джс

Сергей
05.08.2018
12:45:48
Как делают в современном нод джс
читай статьи которые находишь в гугле, а не закрывай по каким-то тупым причинам. npmjs.com/package/socket.io — библиотека для сокетов, а не сайт

Alexander
05.08.2018
12:46:28

Сергей
05.08.2018
12:46:44

Alexander
05.08.2018
12:47:04
Или слишком долго обрабатывает?

Сергей
05.08.2018
12:47:30

Stas
05.08.2018
12:57:15

Shark
05.08.2018
13:24:18
Добрый всем, посоветуйте как избавится от проблемы.
- При данном коде, когда пользователь входит в wizard сцену и не выходя из неё пишет команду start > бот зависает и перестает отвечать:
`bot.hears(keyboard.main_menuPage.pubstomp, Stage.enter('pubstomp-scene'))

Сергей
05.08.2018
13:35:23

Google

Vladimir
05.08.2018
13:43:12

Stas
05.08.2018
13:48:28

Vladimir
05.08.2018
14:14:36
То же самое как что?

Stas
05.08.2018
14:26:20

Сергей
05.08.2018
14:29:04

Stas
05.08.2018
14:30:14

Andrei
05.08.2018
14:33:29
заменить обычными сессионными токенами.
Покажи какие ресурсы юзают jwt?
Ну вообще-то Google, Facebook, Microsoft - все они выпускают именно jwt токены для доступа к своим API (через OAuth). Так что я бы не был настолько категоричным насчёт того что JWT плохой. Как и в OAuth, там просто легко накосячить. Поэтому и не рекомендуют использовать для собственных сайтов. Тем более для большинства юз кейсов jwt - оверкилл.

Сергей
05.08.2018
14:34:27


Vadim
05.08.2018
14:38:46
Всем привет.Хочу парсить страницу X используя http proxy.Когда делаю реквест используя прокси - http://ip:port - всегда выплевывает ошибкую.Кто-то сталкивался с такой же проблемой ?
let agent = new HttpProxyAgent(`http://${proxy.ip}:${proxy.port});
headers.host = ${proxy.ip}:${proxy.port};
let options = {
uri,
method: "GET",
headers,
agent: agent,
timeout: 10000,
followRedirect: true
};
result = await rp(options);`
пример того как делаю реквест

Stas
05.08.2018
14:51:59
Ребят, подкиньте идею пет проекта для обучения, желательно больше упор сделать на бэк (уровень +- джун). nodejs, express, mongo/postgre, angular.

Sheldhur
05.08.2018
14:57:41
сегодня вечер тупых вопросов?

Voskresus
05.08.2018
14:58:38
с авторизацией веб сокетами профилями юзеров

Mikhail
05.08.2018
14:59:08
Ребят, подкиньте идею пет проекта для обучения, желательно больше упор сделать на бэк (уровень +- джун). nodejs, express, mongo/postgre, angular.
Приложение, которое мониторит заказы на фриланс-биржах. То есть я там зарегался, ввёл клюевые слова (node.js, go, typecript). И если на одной из бирж публикуется заказ, где есть такие ключевые слова, то мне на почту или в телегу падает описание заказа и ссылка.

Сергей
05.08.2018
15:04:08

Andrei
05.08.2018
15:15:08
да, ты прав, FB юзают opaque string и предоставляют дополнительный endpoint для вытаскивания метаданных из неё, я уже забыл про это - прошу прощения за неточность.
остаются всего лишь MS и Google :) причем если MS использует jwt token в основном как "metadata bag" насколько мне известно, то Google даже позволяет авторизоваться через подписанные jwt токены т.е. классическая jwt аутентификация.

Google

Andrei
05.08.2018
15:16:13

m.rafee
05.08.2018
15:18:31
hi
i us from async and await .
it work for all functions but not working for remot rest api requests . i dont know how i can fix this problem
my code is :
var result = await request.post(options, async (error, response, body) =>{
if (error) {
console.dir(error);
return error;
}
console.log(1)
var data = JSON.parse(body);
console.log(JSON.parse(body));
console.log(2);
return data;
});

Vitaliy
05.08.2018
15:46:17

m.rafee
05.08.2018
15:54:27

Vitaliy
05.08.2018
15:58:33
what library do u use?

Сергей
05.08.2018
16:34:19


Nikita
05.08.2018
16:36:55
@sergeysova
У меня ранее был сервак на express. В нем я спокойно мог роутингв app.js задавать вот так:
let index = require('./routes/index');
app.use('/', index());
а в нем вот такое:
let express = require('express');
let makeRouter = () => {
let router = express.Router();
/* GET home page. */
router.use('/actions', actions);
router.use('/', base);
return router;
};
module.exports = makeRouter;
А внутри конечного роута
router.post('/' ...
module.exports = router;
Такое вообще реально повторить на Koa2? Или это неправильно будет?

Никита
05.08.2018
16:38:15
You can promisify it. Try this:
const { promisify } = require('util')
const request = promisify(require('request'))
After that you can simply send requests and get their body like that:
const response = await request(url)
console.log(response.body)

Сергей
05.08.2018
16:39:14

Nikita
05.08.2018
16:41:21
Зачем функцию для создания роутера делать?
как видишь app.use('/', index()); это что-то типо entry_point в app.js. И в этом файле уже идет разветление на различные роуты.
Так ранее работало на express, сейчас надо переписать на koa2.
По сути у меня тройная вложенность, а вот в примерах koa2 только максимум двойная. Но до меня пока не доходит как сделать тройную

Сергей
05.08.2018
16:41:35

Nikita
05.08.2018
16:41:50

Сергей
05.08.2018
16:44:58
А как ?
const router = new Router()
router.post(...
module.exports = router

Nikita
05.08.2018
16:50:47

Сергей
05.08.2018
16:52:15

DeepInside
05.08.2018
17:47:10
Народ, кто нибудь писал граббер на ноде? Какие подводные? Нашел либу называется Osmosis, но пока фиг знает стоит ли заморачиваться с ней.

Дмитрий
05.08.2018
17:57:02
Запилил тут dtls протокол для ноды на чистом js. Пока только клиентская часть. https://github.com/nodertc/dtls

енот
06.08.2018
04:15:07
находил пакет, кажется назывался throttle, но не этот https://www.npmjs.com/package/throttle
он просто позволял задать рейт в секунду, в час и тд и скармливать ему функции. он сам следил за частотой их выполнения.
может подскажете?

Pavel
06.08.2018
05:00:45
Cron?

Vadim
06.08.2018
05:14:18
@Voiddancer какая конечная цель? чего пытаешься добиться?

Google

енот
06.08.2018
05:14:41

Vadim
06.08.2018
05:14:59
@unixson писал, только на чистой ноде не получится - зависит какого типа граббер, уточни
@Voiddancer так используй periodical tasks решения - самый простой способ cron-based решение
https://www.npmjs.com/package/cron

енот
06.08.2018
05:18:02
да причем тут крон. мне нужно ограничить верхнюю планку. чтоб за минуту, достим, действите гарантированно не выполнилось более Х раз

Vadim
06.08.2018
05:18:17
для более серьезных решений aws lamda или в связке с celery http://docs.celeryproject.org/en/latest/userguide/periodic-tasks.html

енот
06.08.2018
05:18:30
Вадим, вас куда-то не туда понесло

Vadim
06.08.2018
05:19:25

енот
06.08.2018
05:20:07

Vadim
06.08.2018
05:23:39
как понял так и отвечаю - пишешь middleware функции и ставишь ее для раута апи твоего. в ней сохраняешь в редис ключ значение следующего формата:
YYYYMMDDHHm = X, где YYYYMMDDHHm - временная точка до минуты, Х - инкремент значения через INCR,
итого твой мидлваре будет проверять - какое текущее значение у временной точки, если больше чем 1000 - то кидать эксепшин
@Voiddancer

Valdemar
06.08.2018
05:24:44

енот
06.08.2018
05:26:10
вопрос про пакет был

Vadim
06.08.2018
05:26:45
ну можно и другой частью тела, но если уж лень написать 4 строчки кода - а искать пакет… то тогда я пас

Yadgar
06.08.2018
05:26:49

Alexander
06.08.2018
05:26:50

Yadgar
06.08.2018
05:27:25

енот
06.08.2018
05:27:38

Alexander
06.08.2018
05:28:06
Ну хотя тут реально 3 строчки. Я делал подобный пакет, он для запросов, но можно перелопатить для чего угодно

Google

Таймураз
06.08.2018
05:37:53