В GoLang я пробегаем по моей форме данных, как это,Преобразование Value в строку In For Loop В GoLang
for key, values := range r.Form { // range over map
for _, value := range values { // range over []string
fmt.Println(key, value)
}
}
Я могу напечатать данные на терминале, как это, но мне нужно эти данные, чтобы быть поэтому я могу получить доступ к нему из-за цикла for.
Как я могу поместить это в переменную, которую я могу вызывать за пределами цикла for, когда цикл завершен?
Моя цель здесь заключается в создании URL, вступив эти три строки
var SearchUrl = "https://api.themoviedb.org/3/search/movie?query="
var MovieSearch []string = r.Form["GetSearchKey"]
var apiKey = "&api_key=e2a"
UrlBuild := []string {SearchUrl, MovieSearch, apiKey}
fmt.Println(UrlBuild)
Я получаю эту ошибку
/main.go:71: cannot use MovieSearch (type []string)
as type string in array or slice literal
MovieSearch
исходит из формы ввода. Это ключевые слова для поиска.
Как только у меня есть одна строка, я могу передать это функции, которая вызывает вызов api.
Полнофункциональный
func searchHandler(w http.ResponseWriter, r *http.Request) {
display(w, "search", &Page{Title: "Search"})
fmt.Println("method:", r.Method)
r.ParseForm()
fmt.Println("GetSearchKey:", r.Form["GetSearchKey"])
for key, values := range r.Form { // range over map
for _, value := range values { // range over []string
fmt.Println(key, value)
}
}
var SearchUrl = "https://api.themoviedb.org/3/search/movie?query="
var MovieSearch []string = r.Form["GetSearchKey"]
var apiKey = "&api_key=ewrfwrfwrcwerc"
UrlBuild := []string {SearchUrl, MovieSearch, apiKey}
fmt.Println(UrlBuild)
fmt.Println(reflect.TypeOf(r.Form["GetSearchKey"]))
}
Ошибка происходит от этой линии,
UrlBuild := []string {SearchUrl, MovieSearch, apiKey}
Что плохого в том, данные на карте? – Tyler
Что именно вы хотите? Добавьте пример. – peterSO
«Как я могу поместить это в переменную, которую я могу вызывать за пределами цикла for» - возможно, путем ее хранения в переменной, которую вы определили вне цикла? – creker