Я не совсем уверен, как это сделать в Go, я только начинаю с ним работать, поэтому не знаю, как это сделать.
Идея такова: у меня есть struct
, созданный внутри функции:
XSiteGroup := struct {
siteURL string
siteIDs []string
}{}
Я реализовал запрос, который получает массив объектов; эти объекты имеют следующую структуру:
{
"siteId": "",
"merchantName": "",
"friendlyTitle": "",
"url": ""
}
То, что я пытаюсь сделать, это перебрать этот массив и сохранить каждый url
, который я нахожу как «ключ» без дубликатов, а затем сохранить значение siteId
каждого объекта в массиве siteIDs
структура XSiteGroup
. Итак, давайте скажем следующий сценарий:
{
"siteId": "5050",
"merchantName": "",
"friendlyTitle": "",
"url": "url1.com"
},
{
"siteId": "4050",
"merchantName": "",
"friendlyTitle": "",
"url": "url2.com"
},
{
"siteId": "8060",
"merchantName": "",
"friendlyTitle": "",
"url": "url1.com"
}
Имея результат сверху, мне нужно было бы сохранить что-то вроде:
{
siteURL: "url1.com",
siteIDs: ["5050", "8060"]
}
У меня сейчас что-то вроде этого, чтобы зациклить массив сайтов, которые у меня есть:
for _, site := range xwebsites {
u, _ := url.Parse(site.URL)
urlString := strings.ReplaceAll(u.Host, "www.", "")
// So I'm thinking here I should handle the struct I created to store values
}
Пожалуйста, дайте мне знать, если мне неясно или какая дополнительная информация необходима.