Метод url.Values.Set
Метод url.Values.Set устанавливает значение для указанного ключа
в параметрах запроса. Первым аргументом передается ключ (название параметра),
вторым - значение, которое нужно установить. Если ключ уже существовал,
то его предыдущее значение заменяется на новое.
Синтаксис
values.Set(key, value string)
Пример
Давайте создадим пустой набор параметров и установим значение для ключа:
package main
import (
"fmt"
"net/url"
)
func main() {
v := url.Values{}
v.Set("name", "Alice")
fmt.Println(v.Get("name"))
}
Результат выполнения кода:
"Alice"
Пример
Если ключ уже существует, Set заменяет предыдущее значение новым:
package main
import (
"fmt"
"net/url"
)
func main() {
v := url.Values{}
v.Set("age", "25")
fmt.Println(v.Get("age"))
v.Set("age", "30")
fmt.Println(v.Get("age"))
}
Результат выполнения кода:
"25"
"30"
Пример
Отличие Set от Add: Set заменяет значение,
а Add добавляет новое значение в конец слайса значений для ключа:
package main
import (
"fmt"
"net/url"
)
func main() {
v := url.Values{}
v.Add("colors", "red")
v.Add("colors", "blue")
v.Set("colors", "green")
fmt.Println(v["colors"])
}
Результат выполнения кода:
[green]
Как видим, вместо двух значений осталось только одно последнее установленное.
Смотрите также
-
метод
url.Values.Get,
который возвращает первое значение для заданного ключа -
метод
url.Values.Add,
который добавляет значение к ключу без удаления существующих -
функцию
url.Parse,
которая разбирает URL-строку в структуру URL -
функцию
url.QueryEscape,
которая экранирует строку для безопасного использования в параметрах запроса