@proGO

Страница 1190 из 1674
Aleksandr
30.01.2018
12:39:38
в гугл почему ошибку не вбиваешь?

https://marcesher.com/2014/10/13/go-working-effectively-with-database-nulls/

Marlik
30.01.2018
12:40:06
в гугл почему ошибку не вбиваешь?
Оу, сорян. Чот не подумал.

Aleksey
30.01.2018
12:58:17
Что лучше использовать для работы с файлами os или ioutil? Нужны чтение и запись байтовых массивов

Google
Vladimir
30.01.2018
13:00:54
ioutil, насколько помню, обертки над os
https://golang.org/src/io/ioutil/ioutil.go

Aleksandr
30.01.2018
13:01:14
точнее половина обертки над os, половина над вообще io и в частности над os. А в целом это просто обертки. что выбирать - зависит от заачи

Aleksey
30.01.2018
13:05:34
Спасибо

Slach
30.01.2018
14:01:20
всем привет есть простой код //ConnectDB open database connection func ConnectDB(config *cfg.ConfigType) { var err error InitDBLoggers(config) if dsn, err = dburl.Parse(config.Chatbot.DbDSN); err == nil { db, err = sql.Open(dsn.Driver, dsn.DSN) if err == nil { log.Debug().Msg("dbPing init") go func() { if pingErr := db.Ping(); pingErr != nil { log.Fatal().Err(pingErr). Interface("dsn", dsn). Interface("db", db). Msg("ping database error") } log.Debug().Msg("dbPing done") time.Sleep(10 * time.Second) }() } } if err != nil { log.Fatal().Err(err). Str("config.Chatbot.DbDSN", config.Chatbot.DbDSN). Msg("ConnectDB error") } } я не понимаю почему не стартует горутина с замыканием =((( dbPing init выводится нормально

как такое вообще может быть? каналов каких то там нет вообще

John
30.01.2018
14:06:59
как такое вообще может быть? каналов каких то там нет вообще
если после ConnectDB() программа сразу завершает свою работу, то очень запросто может быть

Slach
30.01.2018
14:11:14
не, не завершает =) я затупил в горутине вечный цикл должен был быть она просто один раз срабатывает и все

Aleksey
30.01.2018
14:11:44
Можете подсказать, есть в го что-то вроде питоновского Counter и most_common, или любой удобный инструментарий, чтобы посчитать частотность слов и получить в отсортированном виде?

Aleksey
30.01.2018
14:15:18
боюсь из удобных инструментов только map[string]int
Я его и использую для подсчета, но похоже придется руками переводить все в массив пар и сортировать

Google
John
30.01.2018
14:16:04
т.к. python для всякой аналитики таки крут :)

Marlik
30.01.2018
14:20:46
Люди, подскажите как сформировать строку включающую в себя значения переменных и занести это в другую переменную? В другом языке так писал: my $var = 123 my $str = "Значение переменной var: $var\n"; Пустяшный вопрос))))

Вячеслав
30.01.2018
14:22:34
Может + ?

Aleksey
30.01.2018
14:22:34
str := fmt.Sprintf("Значение переменной var: %v\n”, var)

Вячеслав
30.01.2018
14:22:37
А не точка

Aleksandr
30.01.2018
14:25:09
Может + ?
может плюс)

Marlik
30.01.2018
14:26:24
str := fmt.Sprintf("Значение переменной var: %v\n”, var)
Да, спасибо, так вроде тоже думал, но чото смущало использовать fmt

Aleksey
30.01.2018
15:05:40
Чятик, а тут никто не прикручивал golint к bazel? Хочу реализовать у себя, не могу сходу убедиться, что готового решения нет

Sergey
30.01.2018
15:47:09
Кто для чего использует голанг? Что удобно писать?

Человек
30.01.2018
15:53:47
Серверные приложения/Backend, сетевые приложения, да все что в голову взбредет то и пиши как говориться :)

Demuz
30.01.2018
16:00:04
Кто для чего использует голанг? Что удобно писать?
Для всего. Особенно если нужна кроссплатформенность.

The
30.01.2018
16:00:45
Быстрые сайты делаю

Google
John
30.01.2018
16:01:12
Я бы добавил, что аналитика/анализ данных на гоу ... не стоит, это боль :)

Demuz
30.01.2018
16:01:13
Удобно, написал, собрал, запустил где захотел.

John
30.01.2018
16:02:14
Го и Интел DAAL ? К примеру, боль?
Например, анализ текстов

Demuz
30.01.2018
16:03:01
Например, анализ текстов
Незнаю. Такое ещё не приходилось писать. Сейчас пишу стример, рестример с популярных сервисов и тд.

Сервер mpeg dash, hls, rtmp. А у клиента go+web интерфейс. Стримит либо свой экран на серв, либо видео, либо просто рестримит с сервиса на свой сервер или удаленный сервер. Типа того.

Это так, в свободное время тренинг.

Хотел поинтересоваться, если я пишу клиентское приложение на го+веб интерфейс на локалхосте, если ли какая нибудь возможность целенаправленно заблокировать запросы извне? Немного зная сети, вроде такую систему можно обмануть подделкой хедера, либо маскированием ip адреса.

Demuz
30.01.2018
16:09:32
Да я сделал. Но я сам если честно в одном софте обманул систему. Там не сложно. Вот думаю решение теперь.

John
30.01.2018
16:10:18
Да я сделал. Но я сам если честно в одном софте обманул систему. Там не сложно. Вот думаю решение теперь.
в смысле ? если ты прицепился на localhost, то вот извне вообще никак попасть нельзя :)

Demuz
30.01.2018
16:11:19
Ошибаетесь. Ещё как можно. Есть либо форвард через веб сервер, либо простое изменение входящего запроса на адрес локалхоста. Сейчас покажу.

Demuz
30.01.2018
16:12:49
Короче насчёт винды не пробовал, но на линуксе есть такая вещь, секунду.

John
30.01.2018
16:13:41
Короче насчёт винды не пробовал, но на линуксе есть такая вещь, секунду.
ну, если специально не стрелять в ногу, то все локально и останется )

Demuz
30.01.2018
16:16:41


John
30.01.2018
16:17:32
ну дык, Я же и говорю, если специально ничего не ломать, то все будет только внутри localhost

Demuz
30.01.2018
16:18:14
Вот правило. По русски так - все входящие соединения на внешний IP такой то, порты такие то, перенаправить на интерфейс с IP 127.0.0.1 и на его внутренние порты. И действительно в дальнейшем все запросы будут по локалхосту ходить. И сама конечная точка будет думать что запрос прям со 127.0.0.1 приходит )))

Есть просто один софт, который запрещал соединения извне. Решил таким образом.

Yury
30.01.2018
16:19:42
Ты сам себя ломаешь чтоли?)))

Google
Demuz
30.01.2018
16:19:50
Да и сами веб серверы форвардят как нефиг делать, знаете же.

Admin
ERROR: S client not available

John
30.01.2018
16:19:51
Так нужно придумать чтобы так просто не сломали )
А такого не бывает. На каждый болт ... )

Demuz
30.01.2018
16:20:05
Ты сам себя ломаешь чтоли?)))
Не, там софт запущен, забинденный жестко на локал.

John
30.01.2018
16:20:51
Не, там софт запущен, забинденный жестко на локал.
можно, кстати, и через socat это было решить, а то iptables сложней и root права нужны :))

Demuz
30.01.2018
16:21:05
А такого не бывает. На каждый болт ... )
nginx вобще, просто proxy_pass прописываешь на ендпоинт и всё. Все запросы попавшие на ендпоинт будут считаться локалхостовскими.

Yury
30.01.2018
16:21:39
Если у софтины root права, то она че угодно может сделать

Demuz
30.01.2018
16:21:41
можно, кстати, и через socat это было решить, а то iptables сложней и root права нужны :))
Ну если я с нулевыми знаниями смог такое решение найти, то юзеры наркоманы подавно найдут )

можно, кстати, и через socat это было решить, а то iptables сложней и root права нужны :))
Да дохрена через что можно решить, поэтому и спросил, может кто сталкивался с такой защитой. Не авторизовывать же клиентов удаленно.

Может реально, какой нибудь auth middleware сделать, всё равно софт работает, когда подключен нэт. Хотя всё сломают помоему. Вон даже гиганты типа JetBrains Не могут продукты защитить от взлома. Паблик сервы лицензий блин.

Demuz
31.01.2018
06:21:00
Утро доброе, Голаговцы! Как можно реализовать закрытие подпроцесса системы, запуск которого был осуществлен из вашего го приложения, после закрытия самого приложения? Если дело касается винды, например пользователь нажимает просто крестик вверху справа, приложение закрывается, но вот системный процесс, запущенный из него, не закрывается. Я могу отловить ивент закрытия окошка на винде, к примеру, или как вобще такие вещи реализовываются?

Верней даже так, немного перепутал, подпроцесс нормально закрывается, после закрытия основного приложения, но вот если оно паниковало, то подпроцесс остается запущенным. В итоге, временное решение - сейчас банально завершается ранее запущенный процесс, только при повторном запуске программы.

Demuz
31.01.2018
06:35:06
Можно. Но вот думаю, вдруг будет ситуация, где паника не будет перехвачена и получается у юзера останется висеть процесс )

Aleksandr
31.01.2018
06:36:20
ну если даже паника не будет перехвачена, то из основого приложения ты уже никак не закроешь

Demuz
31.01.2018
06:36:32
А можно системный процесс запускать как бы внутри го? Или это бред?

Aleksandr
31.01.2018
06:37:38
exec.Run если я правильно тебя понял

Demuz
31.01.2018
06:38:17
Запускает. Но он как бы параллельновыполняющийся в системе получается и независимый от основного. Хотя, нука проверю сейчас.

Google
Demuz
31.01.2018
06:42:48
Вроде закрывается вместе с закрытием приложения. Ладно, спасибо.

Александр
31.01.2018
12:47:21
всем хай

а я вот подумал, а почему бы вместо структуры в моделях не использовать map

а чорд ? мету теряем

Aleksandr
31.01.2018
12:48:35
ну вот. над проблемой не подумал, а уже выкидываешь для обсуждения)

Sander
31.01.2018
13:13:51
Привет, есть кто работал с "Wsse" "WS-Security"?

Arch
31.01.2018
13:15:24
Народ, в go есть что-то queue подобное? с логикой первым пришел, первым ушел, которое усмеет динамически расширяться

Страница 1190 из 1674