🌀 through a haze 🌀
Anonymous
Посоны, скжите, а при multipart/form-data кодируются ли как-то данные, если в запросе файл не пересылается?
Igor
как перешлешь, так и отправится
Anonymous
Ты сам ответил
Но я ничего не понял.
Igor
an7e
Но я ничего не понял.
у тебя форма что то отправляет?
Igor
вот строка рядом с файлом
Anonymous
у тебя форма что то отправляет?
Не форма. Бэкенд. Но не важно. Суть в том, что файл может пересылаться, а может и не пересылаться.
Anonymous
Ну, т.е. среди прочих даных может быть файл.
Anonymous
Лол. Бек передает куда то данные формы в виде multipart/form-data ?
Так требует Telegram Bot API. Если файл, то мультипарт.
Anonymous
Мой изначальный вопрос — стоит ли заморачиваться другими способами.
Anonymous
Может слать в мультипарт ВСЕ запросы, которые даже без файлов.
Амаль
чет муть какая-то
Амаль
в чем загвоздка?
Anonymous
Anonymous
в чем загвоздка?
Если для отправки мультипарт простые данные тоже как-то кодируются, то для обычных запросов я выберу другой способ, чтобы не жертвовать быстродействием.
Anonymous
Даже если оно так, то это экономия на спичках. Но сэкономить всё равно есть смысл.
an7e
https://core.telegram.org/bots/api#inputfile
Если я правильно понимаю то тут вопрос не по фронту, у тебя на беке типа бот для телеги так?
Anonymous
Бот на ноде. =)
Anonymous
Но мультипарт — это ж блин вопрос по фронту! =)
Anonymous
Ладно, не только. Но по фронту в т.ч.
Vitaly
Ну так возьми либу, чо велосипедить
Anonymous
Ну так возьми либу, чо велосипедить
Взял. У меня либа берёд ридейбл стрим и делает из него мультипарт дату.
Амаль
тебе файл надо стримить по api пользователю??
Anonymous
Ну так возьми либу, чо велосипедить
Я точно знаю, что мой велик тоже пригодится.
Anonymous
Он модный.
Амаль
на бекенде ты свой файл получить а вот как ты его по API передашь тут форма какбы не причем главное да чтобы multipart... был
Anonymous
на бекенде ты свой файл получить а вот как ты его по API передашь тут форма какбы не причем главное да чтобы multipart... был
Да. Никто и не возражает. Просто у меня нихуаллиард знаний о том, как это работает на низком уровне. И нужно принять решение.
an7e
!!!!
все просто. Как ты шлешь обычные запросы, типа на ссобщение там?
Anonymous
все просто. Как ты шлешь обычные запросы, типа на ссобщение там?
application/json мне удобнее всего. Все запросы идут на такой урл: https://api.telegram.org/bot<token>/METHOD_NAME
an7e
application/json мне удобнее всего. Все запросы идут на такой урл: https://api.telegram.org/bot<token>/METHOD_NAME
я прочитал уже доку и понял чо как, меня интересует, как именно ты это делаешь?
Anonymous
я прочитал уже доку и понял чо как, меня интересует, как именно ты это делаешь?
Не понял вопроса. Я — никак. Моя либа абстрагирована пока от этого.
Anonymous
Она принимает колбэк sendRequest, который всё разруливает.
Anonymous
Но, наверное, я зря это предусмотрел, т.к. вряд и кому-то захочется слать запросы через левый прокси там или ещё что.
Anonymous
юзаешь стандартный http.request ?
Могу и это. Могу фетч.
Anonymous
А для мультипарт — вот что: https://www.npmjs.com/package/form-data
an7e
Могу и это. Могу фетч.
Вот фетч как раз умеет нармально работать с multipart/form-data
Anonymous
Но колбэк sendRequest я выпилю. Это невежливо — заставлять пользователя ебать мозг тем, как ему отправить файл боту.
an7e
Да ну?
Да. Самое главное там правильно собрать FormData перед отправкой
Anonymous
https://github.com/bitinn/node-fetch#usage
Anonymous
Да, я вижу.
Anonymous
Последний пример в Usage
Anonymous
Но блин. Я разберусь, как это делать.
Anonymous
Вопрос-то был в другом.
an7e
https://github.com/bitinn/node-fetch#usage
Я только не пойму зачем тебе fetch, если у ноды есть свой стандартный http.request?
Anonymous
Для обычных данных сттоит заморачиватьсядругим способом? Будет ли это быстрее?
an7e
ща пример найду
Anonymous
Скорей всего и воспользуюсь минимальным тулкитом.
Anonymous
Мультпарт данные кодируются или нет?
an7e
Мультпарт данные кодируются или нет?
Это и есть один из вариантов кодировки )
Anonymous
О, я проглядел.
an7e
Это и есть один из вариантов кодировки )
application/x-www-form-urlencoded могло быть такое
Anonymous
Понятно. Значит, пофиг, что слать.
Anonymous
application/x-www-form-urlencoded могло быть такое
Я думаю о том, как меньше всего нагрузить машину, на которой поднимают бота.
Anonymous
Если бы обычные данные там каким-то ебическим образом кодировались, то это сжирало бы процессорное время, а это плохо. Но из скрина понятно, что не кодируются.
Anonymous
Просто здесь логика сложная пойдёт. Либо у тебя есть список методов, которые пересылают файл, или таким признаком служит наличие readableStream в пропсах. И то, и друго реализовывать — немного геморно, и усложнять в этом месте логику совсем не хочется. Хочу сделать всё простым, как пробка.
Anonymous
Это всего лишь заголовки
Вот теперь точно всё понятно. Спасибо. =)
Anonymous
Привет всем
Anonymous
есть кто сможет помочь с java web?
Anonymous
ну там по идее вопрос с javascript
Igor
тогда пиши сразу вопрос
Yevhenii
чат не перепутал?
видимо нет, ведь ты джава разраб
Igor
видимо нет, ведь ты джава разраб
но для джавы другой чат 🌝
Anonymous
я тут тест с вариантами на java web писал, и варианты с radiobutton