Aleksandr
(правда документации ноль)
Pawel
ээ, если бы этот ваш сваггер генерил мне обработччики сессий gorilla/websocket , я б ещё подумал. А гнать данные через ХТТП в качестве транспорта в 17 году - это грех ящетаю.
Pawel
а сама идея супер - описал апи на гуманном языке - получил автоматом yaml + документацию + сгенерённый код - опупенно
Ilya
У всего есть свои плюсы и минусы
Anonymous
Завтра собеседование впервые на golang вакансию :D Что обычно у Go разработчика на собеседованиях спрашивают?
поздновато, но все же: мне давали пройти тест + устное общее собеседование https://certification.mail.ru/tests/golang35/start/
Ilya
Наверное трафик экономят
Ilya
Ну или двунаправлено надо
Oleg
ээ, если бы этот ваш сваггер генерил мне обработччики сессий gorilla/websocket , я б ещё подумал. А гнать данные через ХТТП в качестве транспорта в 17 году - это грех ящетаю.
А что за инструмент такое делает? (сваггер не может сессии gorilla/websocket) Кстати, ничего не мешает подключить сессии gorilla через http://swagger.io/specification/#securityDefinitionsObject
Oleg
Я не знаю инструментов, которые бы приблизились по пользе к сваггеру, в плане создания REST API.
Oleg
Но интересно узнать :)
Pawel
@IlyaSinelnikov всё верно. Греть железо не можно, и асинхронный веб рулит. @olebedev есть некоторые маргинальные фреймворки, которые такое делают n2o например. Я в полезности сваггера не сомневаюсь. Следующий шаг - расширить её за пределы хттп на что-то более кошерное. Вангую что рано или поздно они к этому придут
Slava
так уже давно есть grpc
Slava
как вверху писали, для подобных нужд
Slava
но как REST апи генератор - сваггер рулит, как Олег и писал выше
Вячеслав
Apidoc?
Pawel
так уже давно есть grpc
grpc - толстый фреймворк, а websockets - транспортный протокол поверх tcp. не чувствуешь разницу? "сваггер рулит" - ну про то и речь, что хотелось бы таким же образом генерить каркас websocket приложения
Oleg
RAML Пишу как дополнение к требованиям. Разрабам нравится)
Речь именно про кодогенерацию. Для RAML есть такое?
Daniil
Для Go https://github.com/EconomistDigitalSolutions/ramlapi
Ilya
Вебсокеты конечно хорошо но есть ситуации когда ими нельзя пользоваться от слова "совсем".
Ilya
Мы рассматривали и grpc, и даже такие штуки как zeromq. Выбрали рест потому что с ним проще.
Ilya
Мы выбирали язык после выбора транспорта, а не до.
Ilya
И чистый rpc не рассматривался совсем, т.к на наш взгляд не дает никаких преимуществ перед другими решениями.
Pawel
а как вы планирутете api внутри websockets? там что-то похожее на rest?
Тут зависит всё от архитектуры приложения. Но как правило нет необходимости делать именно по принципам rest, поскольку там не публичное апи и не единственный data gate на всё. Ну и поскольку речь идёт о вебзаднице для SPA, то формат данных надо брать текстовый человекочитаемый, чтобы в браузере видеть что происходит. А не протобуф какой-нибудь
Nix
всем привет, подскажите, есть strpos - Возвращает позицию первого вхождения ?
Nix
аналог на go?
Mike
"место для пошлой шутки про первое вхождение"
ros
https://godoc.org/strings#Index
Aleksand
посылать сообщения, на сервере написать роутер, роутящий сообщения разных типов в соответствующие хэндлеры
тут вопрос подхода к организации, а не технической реализации, обычно на ws внутри все через пень в колоду и кто как придумает
Aleksand
ну вот если в rest есть абстракция "ресурс" и методы управления ресурсом, то что внутри ws? обычно ничего хитрее пачки неструктурированных методов с логикой какой-то и json-rpc-подобного формата сообщений внутри сокета не видно
Aleksand
я думаю, да, будет похоже на rpc
в большом продукте удобство этого вызывает большие сомнения, особенно учитывая что rest все равно придется поддерживать в итоге
Aleksand
удобно писать код которому без разницы откуда пришли данные через http или через ws, но чтобы оно так работало нужна правильная абстракция
Aleksandr
Daniil
Подскажите, кто с веб работал. Асинхронный запрос на поддомен основного сайта, будет считаться кросс доменным или нет? запрос с mysite.com -> vasya.mysite.com
Alexander
по идее да
Brown
Все ок будет
Daniil
Хмм.. мнения раздвоились)
Alexander
вот даже пример нашел - http://joxi.ru/D2P8VDbhpx6oE2
Alexander
надо доступ на уровне веб-сервера прописать для конкретного домена
Alexander
тогда все норм будет
Brown
в nginx header('Access-Control-Allow-Origin: *');
Daniil
Оке. т.е. нужно CORS Спасибо)
Brown
подомену сврему
Brown
если такой запрос через jsonp делать, facepalm
Мерль
Выпуск 103. Go-митап @ РИТ++ 2017 · http://golangshow.com/episode/2017/06-05-103/
Мерль
#подкаст
Slava
гугл?
Slava
> Запись производилась в полевых условиях.
nikita
да подкаст в принципе хуевый к сожалению( не из-за контента, а из-за качества постоянный гул, никого не слышно, 6 ведущих которые перебивают друг друга - при всем желании слушать невозможно
nikita
http://codepodcast.com/
nikita
послушайте вот этот для сравнения
Vladimir
> Запись производилась в полевых условиях.
Вопрос наверное был в том что можно было бы сделать постобработку и ценой качества голоса убрать гул
nikita
было бы еще клево, чтобы каждый записывал свой голос , а потом свести (просто такое чувство, что кто-то один через скайп все пишет)
Anonymous
Срочно ищется либа на Go для удаления шумов ))
Dmitriy / დიმიტრი
конкретно эта реализация так себе, а вообще это известный паттерн, который помогает делать код менее связанным
Еще раз перечитал статью. Почему она так себе? Из-за использования рефлексии?
Dmitriy / დიმიტრი
А какие хорошие реализации Dependency Injection в Go существуют?
Dmitriy / დიმიტრი
у нас такая https://github.com/ivankorobkov/di
Привет, я ваше тестовое задание как раз делаю :D
nikita
thequestion
Michael
а ты где работаешь?
здесь есть возможность найти работу?
Евгений
здесь есть возможность найти работу?
как раз есть открытая вакансия ) По всем вопросам можно писать мне.