
1nd2rd3st
04.12.2017
21:04:42
aborted подпишись

Dmitrii
04.12.2017
21:08:05
ну эт понятно что есть aborted, хотя непонятна разница между aborted и close. Поведение все же странное.

1nd2rd3st
04.12.2017
21:15:50
The 'close' event is emitted when the stream and any of its underlying resources (a file descriptor, for example) have been closed. The event indicates that no more events will be emitted, and no further computation will occur.
****
The 'end' event is emitted when there is no more data to be consumed from the stream.
Note: The 'end' event will not be emitted unless the data is completely consumed. This can be accomplished by switching the stream into flowing mode, or by calling stream.read() repeatedly until all data has been consumed.
***
Event: 'aborted'
Emitted when the request has been aborted and the network socket has closed.

Dmitrii
04.12.2017
21:17:08
Note: The 'end' event will not be emitted unless the data is completely consumed - обрыв значит что данные не completely consumed противоречие в доках какое то

Google

1nd2rd3st
04.12.2017
21:17:08
Разные уровни абстракции если можно так выразиться.
Аборт и клоуз относятся к стриму, энд сигнализирует об окончании данных

Dmitrii
04.12.2017
21:17:55
я смотрю сорцы аксиоса адаптера к ноде, они вообще не заморачиваются: https://github.com/axios/axios/blob/master/lib/adapters/http.js#L185
только end и error который вероятнее всего хэндлит ошибки из zlib

1nd2rd3st
04.12.2017
21:18:24
Доку тоже люди пишут

Dmitrii
04.12.2017
21:23:16
кароче, затестил такой же пример с аксиосом, обрыв не обрабатывается абортом или close, он берет end при убийстве сервера, и отдает столько данных сколько успел считать
const axios = require('axios')
axios
.get('http://localhost:3000')
.then(res => console.log(res.data))
.catch(err => console.log(err))
т.е даже такой кейс считается успешным)
модуль request из npm такое же поведение
кароче если предположить, что эти модули писали не дураки, то вывод такой, при клиентских запросах, надо ждать end в любом случае, а после него уже на основании полученых данных решать, успех это или провал

1nd2rd3st
04.12.2017
21:31:20
СТранно, если писали не дураки, тогда зачем они подписываются на ивент которого нет?
https://github.com/axios/axios/blob/master/lib/adapters/http.js#L180

Dmitrii
04.12.2017
21:32:28
https://github.com/axios/axios/blob/master/lib/adapters/http.js#L147 хочешь сказать у zlib нету error?
вот если что: https://github.com/nodejs/node/blob/master/lib/zlib.js#L137

1nd2rd3st
04.12.2017
21:38:26
Ну на злиб они переходят только в отдельных кейсах, а http.IncomingMessage вроде как не емитит эроры

Google

Dmitrii
04.12.2017
21:39:00
ну листенер то повесить ничего не стоит, думаю не запарились просто
да уж иногда залезеш в кишки к либам за 30к, и думаешь, либо ты чего то не знаешь, либо все плохо в этом мире))

1nd2rd3st
04.12.2017
21:40:52
https://github.com/nodejs/node/blob/master/lib/_http_incoming.js
Или это какой-то другой Инкам
Напишешь аксиосам что они мудаки?

Dmitrii
04.12.2017
21:42:18
это тот самый
я пока не уверен что мудаки они а не я)

1nd2rd3st
04.12.2017
21:43:06
Точно не я
Но видимо все надеются на лучшее
Аксиос читает req.aborted пропертю но это не то что им надо. Вернее не на 100% то

Dmitrii
04.12.2017
21:55:46
важно когда abort вызывается
timeout и cancel
интересно: https://github.com/request/request/blob/master/request.js#L994

Ilgiz
05.12.2017
08:39:17
кто работал с телеграм апи отправке кнопок в таком формате должен быть json
{
chat_id: messageObj.chat.id,
text: text,
reply_markup: {ReplyKeyboardMarkup: {keyboard: [[1, 2, 3], [1, 2, 3]]}}
}
?
куда не смотрю все упираются на готовые уже библиотеки

Yaroslav
05.12.2017
08:47:27
в чем вопрос?

Ilgiz
05.12.2017
08:47:56
как отправить кнопки?

Yaroslav
05.12.2017
08:48:08
название чата какое?

Ilgiz
05.12.2017
08:49:45
Ты только притворяешся таким?Или трудно вообще не писать если не знаешь ответ на вопрос?

Kelin
05.12.2017
08:50:08
Тссс ребята, не ругайтесь

Google

Ilgiz
05.12.2017
08:50:27
Выше просто спросил кто работал с апишкой телеграмма

Alexander
05.12.2017
09:09:23
Ща

Ilgiz
05.12.2017
09:10:44
Разобрался я
Спасибо

Alexander
05.12.2017
09:11:53
А я лез в код, скрин делал...
С телефона...

Ilgiz
05.12.2017
09:31:26

Dmitry
05.12.2017
09:48:05
Подскажите плиз, считываю файл через fs.createReadStream и нужно отправить его на клиент, делаю readStream.pipe(res); но приходит контент файла, а мне нужно что файл начал скачиваться. Может кто сталкивался?

Alexander
05.12.2017
09:49:05
Што
Ты хочешь файл скачать на клиент?

Alexander
05.12.2017
09:50:06
res.download

Alexander
05.12.2017
09:51:41

Dmitry
05.12.2017
09:52:06
да мне нужно по ссылке отдать файл на скачку клиенту

Morsik
05.12.2017
09:52:08
а зачем стрингифай и парсинг?

Dmitry
05.12.2017
09:52:13
res.download не подходит

Alexander
05.12.2017
09:52:20
))
Ща

Ilgiz
05.12.2017
09:53:14

Google

Alexander
05.12.2017
09:53:21

Morsik
05.12.2017
09:53:41

Alexander
05.12.2017
09:53:52
Тебе нужен :id: этого смайла

Admin
ERROR: S client not available

Ilgiz
05.12.2017
09:54:14
тут не причем сам смайл а формат отправки

Alexander
05.12.2017
09:54:37

Ilgiz
05.12.2017
09:54:39

Alexander
05.12.2017
09:54:51
Ты типо @like сделать хочешь?

Ilgiz
05.12.2017
09:54:52
если нажать то переход на url
без перехода

Alexander
05.12.2017
09:55:42
Почитай возможные параметры у inline_keyboard
Могу даже линк дать
Там все рассказывают

Ilgiz
05.12.2017
09:56:07
я уже перечитал
дай ссылку может я другое читаю

Alexander
05.12.2017
09:57:13
https://core.telegram.org/bots/api#inline-mode
callback query ежжи
А

Google

Alexander
05.12.2017
09:58:19
Я не то дал
))
https://core.telegram.org/bots/api#inlinekeyboardmarkup
Вот это

Ilgiz
05.12.2017
09:59:34
Там нету про это

Alexander
05.12.2017
10:01:46
Как я понял через callback data
Иначе никак, хз
И редактором потом добавляешь цыферку к выбранному ответу

Dmitry
05.12.2017
10:05:08
ещё вопрос
есть вот такое:
request.get('https://d3n8a8pro7vhmx.cloudfront.net/taxpayers/pages/679/attachments/original/1499663166/4-ways-cheer-up-depressed-cat.jpg?1499663166').pipe(res)
на клиент приходит вот такое https://prnt.sc/hjazi2
как заставить скачивать как файл

Morsik
05.12.2017
10:20:38
res.attachment('file-name.jpg') уже пробовал?

Dmitry
05.12.2017
10:21:17
da

KlonD90
05.12.2017
10:22:41
господа а как послать нам 2к писем
чем вы пользуетесь?
не mailgun ни mailchimp не дал нам послать письмеца :(