Size: a a a

2021 June 09

VY

Vladislav Yarmak in Go-go!
не, не надо
источник

VY

Vladislav Yarmak in Go-go!
щас накидаю, наверное, пример
источник

VY

Vladislav Yarmak in Go-go!
источник

N

Nikita in Go-go!
var msg IPunswer

 err = json.Unmarshal((buf), &msg)

 fmt.Println(msg)
 
 return msg

отдаю func GetIPs(Token string,API_URL string) byte

но

./test.go:152:2: cannot use msg (type IPunswer) as type byte in return argument
./test.go:161:1: missing return at end of function
источник

VY

Vladislav Yarmak in Go-go!
что такое IPunswer?
источник

N

Nikita in Go-go!
ype IPunswer struct {
 Count int json:"count"
 Ips   []struct {
   IP           int         json:"ip"
   Locked       int         json:"locked"
   WhiteDdos    interface{} json:"white_ddos"
   Server       int         json:"server"
   ServerType   string      json:"server_type"
   ServerStatus string      json:"server_status"
   Owner        string      json:"owner"
   DdosLimit    int         json:"ddos_limit"
 } json:"ips"
}
источник

VY

Vladislav Yarmak in Go-go!
ну и сериализованный жсон это не один байт, а слайс []byte
источник

VY

Vladislav Yarmak in Go-go!
а, значит там структура, а не JSON, как вы изначально говорили
источник

N

Nikita in Go-go!
да там просто структура
источник

RL

Ragnar Lodbrok in Go-go!
Вам надо бы почитать готур, потому что у вас ошибки и вопросы прям новичковые
источник

S

Slava in Go-go!
Всем привет
Подскажите, пожалуйста, как мапить nullable параметры в gin
например, у меня есть ендпоинт, который возвращает всех кошечек одного пользователя, но кошечек может быть много, и я бы не хотел возвращать всех кошечек пользователей, а возвращать частями ( пагинация ), и если параметр страницы / лимита не передан, то устанавливать некоторые дефолтные значения.
Вот, я создал следующую структуру:
type CatsFindByUserDTO struct {
 UserID int  `form:"user_id" binding:"required"`
 Page   *int `form:"page"`
 Limit  *int `form:"limit"`
}

Пытаюсь её замапить вот та
к:
 var filter dto.CatsFindByUserDTO

 if err := c.BindQuery(filter); err != nil {
   newErrorResponse(c, http.StatusBadRequest, err.Error())
   return
 }

Но результат не тот, что я ожидал. Я нагуглил решения, в которых предлагается Page / Limit объявить строками, и сравнивать с пустой строкой.  Нет ли возможности, мапить на указатель встроенными инструментами ? Т.е. я бы хотел, если значения нет — то nil, если есть, то указатель по которому лежит переданное число.
Если такого варианта нет, то как можно организовать логику этого маппинга ( куда вынести, как делают у вас проектах ) ?
источник

VY

Vladislav Yarmak in Go-go!
плюсую
источник

N

Nikita in Go-go!
это струтура  но позже делаю json.Unmarshal
источник

VY

Vladislav Yarmak in Go-go!
я на прошлой работе вот такое использовал: https://github.com/volatiletech/null/
источник

VY

Vladislav Yarmak in Go-go!
если вам надо получить из структуры JSON, вам надо сделать json.Marshal
источник

VY

Vladislav Yarmak in Go-go!
ну и тип возвращаемого значения должен быть как тип у структуры
источник

VY

Vladislav Yarmak in Go-go!
в остальном могу сказать - пройдите gotour
источник

N

Nikita in Go-go!
понял спасибо , сегодня займусь
источник

E

ElementaL in Go-go!
Благодарю вас, забыл главное про playground, мне надо было там сразу пример кидать вместе с вопросом). В итоге понял вас правильно, просто в моей реальной задаче я не могу не выносить отдельно функцию для параллельного запуска, ибо код утратит читаемость, поэтому ее необходимо синхронизировать с себе подобными отдельно
источник

VY

Vladislav Yarmak in Go-go!
ну если в мап общий писать, то это нужно блокировку вокруг него
источник