@proGO

Страница 1605 из 1674
Eldar
01.08.2018
06:18:31
я использовал гариллу, там все изи

Daniel
01.08.2018
06:20:00
Надо писать свой роутер на си!

Dmitry
01.08.2018
06:21:11
Я имел ввиду пример готового сервиса с хотя бы несколькими модельками. Я просто сейчас смотрю на свой проект и есть у меня сильное чувство, что хоть оно и работает, показывать это никому не стоит

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

Google
Andrey
01.08.2018
06:55:35
OpenAPI не путайте человека

Dmitry
01.08.2018
06:58:39
Use swagger, Luke!
А как дока мне поможет посмотреть правильную организацию кода?

Александр
01.08.2018
07:25:25
странная хурма

а что [20]byte не конвертиться без бубна в строку?

хочу хеша заполучить - string(sha1.Sum(imageData))

но типо говорит нельзя

Olzhas
01.08.2018
07:27:59
Александр
01.08.2018
07:28:22
да это то как раз понятно

я думал "сэкономить" и сделать через string()

Olzhas
01.08.2018
07:29:04
я думал "сэкономить" и сделать через string()
пока ты "экономил", ты потратил время работодателя

Александр
01.08.2018
07:29:23
отставить нотации

Google
Olzhas
01.08.2018
07:29:48
если нет задачи оптимизировать все по максимуму, то не вижу смысла оптимизировать такие места

Александр
01.08.2018
07:30:30
%s кстати там работать не будет

придут козябры - ���݅@; !R�

Olzhas
01.08.2018
07:30:54
потому что надо делать base46 encode

Александр
01.08.2018
07:31:00
там %x

Olzhas
01.08.2018
07:32:13
там %x
ну или base 16

я обычно использую base64

но это потому что я пхпшник

Roman
01.08.2018
07:33:01
Видно я не то спросил? я имел ввиду рест-сервер на го
Ааа! Это какое-то помешательство :((

Olzhas
01.08.2018
07:34:18
кстати

Dmitry
01.08.2018
07:34:30
Может это просто наплыв входящих в ит?

Olzhas
01.08.2018
07:35:41
меня интересует такой вопрос - как сделать сокращалку url? Я сделал реализацию с записью адресов в бд, для определения адреса использовал id, конвертированный в base36

каким способом можно от перебора защититься?

Александр
01.08.2018
07:38:11
хранить урлы в базе

и отдавать guid записи

Daniel
01.08.2018
07:41:46
перебора чего?

Olzhas
01.08.2018
07:41:55
адресов

Daniel
01.08.2018
07:42:14
вектор угрозы какой?

Александр
01.08.2018
07:42:35
кто-то переберет все IDщники

Olzhas
01.08.2018
07:42:37
т.е. у меня адреса типа https://anotherurlshortener/shorturl

Google
Olzhas
01.08.2018
07:42:59
где shorturl - это порядковый id url из бд

в base36

Александр
01.08.2018
07:43:10
назови GUID

Daniel
01.08.2018
07:43:18
а, порядковый номер это плохо

Александр
01.08.2018
07:43:21
и запихни туда радномную строку

или guid

Daniel
01.08.2018
07:43:47
но зачем там порядковый? берите рандомный

ну или шифруйте его уже

Olzhas
01.08.2018
07:46:28
не, не подходит

Александр
01.08.2018
07:46:41
не, не подходит
мой вариант тоже не подходит?

Olzhas
01.08.2018
07:46:47
base36 не особо подходит даже

Александр
01.08.2018
07:47:18
ты можешь блин сгенеировать СЛУЧАЙНУЮ строку небольшой длинны и положить в базу

а получать запись не по ID

а по этой строке

Olzhas
01.08.2018
07:47:28
это то можно

Александр
01.08.2018
07:47:56
индекс не забудь построить по полю

Marperia
01.08.2018
08:10:02
т.е. у меня адреса типа https://anotherurlshortener/shorturl
Молодой человек тестовое от Яндекса пишет?

Olzhas
01.08.2018
08:21:03
у них есть такое тестовое задание штоле?

Google
Olzhas
01.08.2018
08:21:28
лол

Pavel
01.08.2018
08:24:15
у них есть такое тестовое задание штоле?
Справишься с этим, заодно и в Яндекс можно устроиться.

Alexei
01.08.2018
08:24:44
Справишься с этим, заодно и в Яндекс можно устроиться.
устроиться в яндекс - звучит как приговор ))))

Olzhas
01.08.2018
08:24:48
Ну саму сокращалку url я еще весной написал

Сегодня вот @ruelephant байтоебством напомнил мне про нее

Я и вспомнил проблему с перебором

С другой стороны, можно и забить

Палка о двух концах - короткий урл или защита от перебора

От перебора можно и простым ограничением по количеству запросов подряд в течении короткого периода времени с одного айпи адреса защититься

Александр
01.08.2018
08:29:07
почему или то ?

в моем случаи уникальный индекс на поле решает проблему

будет все коротко и с защитой от перебора

еще можешь куку выставить

Olzhas
01.08.2018
08:34:14
о, нашел https://github.com/ivanakimov/hashids.js/blob/master/lib/hashids.js

надо на го имплементацию поискать

?
01.08.2018
08:34:59
так перепиши?

Olzhas
01.08.2018
08:36:11
так перепиши?
я ленивый

я нашел на го

?
01.08.2018
08:36:34
давай сюда?

Olzhas
01.08.2018
08:36:54
https://github.com/speps/go-hashids

Google
Bohdan
01.08.2018
08:37:55
а что мешает uuid использовать?

ну кроме длины

Александр
01.08.2018
08:38:09
да блин я ему уже предложил этот вариант

не хочет что-то

Maksim
01.08.2018
08:38:50
Olzhas
01.08.2018
08:38:59
https://hashids.org/

Александр
01.08.2018
08:39:25
я вот не пойму

что тебе мешает самому сделать случайную строку?

Александр
01.08.2018
08:40:19
func init() { rand.Seed(time.Now().UnixNano()) } var letterRunes = []rune("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ") func RandStringRunes(n int) string { b := make([]rune, n) for i := range b { b[i] = letterRunes[rand.Intn(len(letterRunes))] } return string(b) }

держи

seed можешь переместить в функцию

что вот за бред то

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