Size: a a a

2020 September 07

LL

Lama Lover in pro.elixir
Alex Bubnov
Да, только после этого клиент должен получать грубо говоря необернутый сокет
Я вот, кстати, не понимаю, это что за такое приложение, где http апгрейд руками нужно делать?
Например http->https как-то не солидно. http->http2 почему не сразу?
источник

AB

Alex Bubnov in pro.elixir
Lama Lover
Я вот, кстати, не понимаю, это что за такое приложение, где http апгрейд руками нужно делать?
Например http->https как-то не солидно. http->http2 почему не сразу?
Да вебсокеты через него работают, вебсокеты. И любой другой tcp-based протокол, какой тебе захочется
источник

LL

Lama Lover in pro.elixir
Alex Bubnov
Да вебсокеты через него работают, вебсокеты. И любой другой tcp-based протокол, какой тебе захочется
Что?
источник

AB

Alex Bubnov in pro.elixir
Lama Lover
Что?
Http upgrade это миграция на произвольный tcp-based протокол, поддерживаемый обеими сторонами. Ws - частный случай
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Тут тока gun
источник

LL

Lama Lover in pro.elixir
Alex Bubnov
Http upgrade это миграция на произвольный tcp-based протокол, поддерживаемый обеими сторонами. Ws - частный случай
Я понимаю, мой вопрос всё ещё в силе
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Просто нафик усложнять себе жизнь, когда пишешь круд стартапчик и все интеграции через http1.1 rest
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Правда tesla я не понимаю совсем
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Им из cli прям сильно не удобно. А когда пишешь клиент для rest api - ну какая там сложность написать 30 строчек для hackney и не размазывать по модулям и коллбэкам
источник

LL

Lama Lover in pro.elixir
Źmićer Rubinštejn
Им из cli прям сильно не удобно. А когда пишешь клиент для rest api - ну какая там сложность написать 30 строчек для hackney и не размазывать по модулям и коллбэкам
Так и зачем что-то писать, когда за тебя всё уже написано. И парсинг, и хэдеры в одном месте, и авторизация, и ретрай, и редиректы, и всё-всё-всё, только заплагай
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Ну вот например я недавно писал микроклиент для эластика.

Два запроса, каждый из которых имеет разные content-type хедеры.

Кроме того, hackney позволяет застримить request, не говоря уже о том, чтобы застримить и response.

С учётом того, что нельзя было положить прод эластика, пришлось делать отдельный пул на запросы в него.

И вот как бы мне помог тесла тут?
источник

LL

Lama Lover in pro.elixir
Źmićer Rubinštejn
Ну вот например я недавно писал микроклиент для эластика.

Два запроса, каждый из которых имеет разные content-type хедеры.

Кроме того, hackney позволяет застримить request, не говоря уже о том, чтобы застримить и response.

С учётом того, что нельзя было положить прод эластика, пришлось делать отдельный пул на запросы в него.

И вот как бы мне помог тесла тут?
Тут бы никак не помог, это не тот юзкейс
источник

ŹR

Źmićer Rubinštejn in pro.elixir
А какой - тот? Где ты БЫ захардкодил в одном месте в 15 строчках все говно, но «можно взять тесла и оформить это говно КРАСИВО в виде плага»?
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Т.е. ты тянешь deps, чтобы вместо


{:multipart, [{:file, "test.txt", {"form-data", [{"name", "mytest"}, {"filename", "test.txt"}]}

Писать

Multipart.new()
 |> Multipart.add_content_type_param("charset=utf-8")
 |> Multipart.add_field("field1", "foo")
 |> Multipart.add_field("field2", "bar",
   headers: [{"content-id", "1"}, {"content-type", "text/plain"}]
 )


Да, красиво. Стоит
того? Хз
источник

LL

Lama Lover in pro.elixir
Я вот писал кучу клиентов к различным провайдерам рекламы, и там тесла нормально заходила, потому что миддлвари отражали вид запроса
Где-то JSON, где-то xml, где-то ещё что-то.
Что нужно было сделать с теслой:
- подключить миддлвари
- вытащить результат из распаршенного тела
- заимплементить коллбэк для модуля рекламного провайдера

И мне не приходилось думать о реконнектах, виде соеденения и прочем говне
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Что такое Реконнект и вид соединения?
источник

LL

Lama Lover in pro.elixir
А самое главное, я писал меньше кода и шел смотреть мультики
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Типа

plug Tesla.JSON

писать быстрее чем

|> Jason.decode!()

?
источник

LL

Lama Lover in pro.elixir
Źmićer Rubinštejn
Что такое Реконнект и вид соединения?
Ну типа иногда соединение рвётся и нужно ретрай сделать
А вид соединения — это один из http*
источник

VK

Vyacheslav Konovalov in pro.elixir
если какое то поле в модели (схеме) required типа string например, не маразм ли тестом проверять что без этого поля возникает ошибка валидации?
источник