Дублируются данные в горутине, что делать?
package main
import (
"github.com/gofiber/fiber/v2"
"github.com/polds/imgbase64"
)
var (
response models.QQResponse
extra models.ExtraBody
)
func Gen(url string) {
request := fiber.Post("https://ai.tu.qq.com/trpc.shadow_cv.ai_processor_cgi.AIProcessorCgi/Process")
request.JSON(fiber.Map{
"images": []string{url},
"busiId": "ai_painting_anime_img_entry",
})
request.Struct(&response)
if len(response.Extra) != 0 {
if err := json.Unmarshal([]byte(response.Extra), &extra); err != nil {
log.Println("Ошибка при парсинге: ", err)
return
}
fmt.Println(extra.UUID)
}
}
func main() {
//обычный код серверной части https://github.com/gofiber/recipes/blob/master/hello-world/main.go
//вызываем из метода функцию
go Gen(imgbase64.FromRemote("http://somedomain.com/animage.jpg"))
return c.SendString("Hello, World ?!")
}
Если высокий RPS, то UUID начнет повторяться, что можно сделать, чтобы случайно не попала чужая картинка другому юзеру?