Ich bin ziemlich neu in Go und verstehe noch nicht alles. In vielen der modernen Sprachen Node.js, Angular, jQuery, PHP können Sie eine GET-Anforderung mit zusätzlichen Abfragezeichenfolgenparametern ausführen.
Dies in Go zu tun ist nicht ganz einfach, wie es scheint, und ich kann es noch nicht wirklich herausfinden. Ich möchte wirklich nicht für jede der Anforderungen, die ich ausführen möchte, eine Zeichenfolge verketten müssen.
Hier ist das Beispielskript:
package main
import (
"fmt"
"io/ioutil"
"net/http"
)
func main() {
client := &http.Client{}
req, _ := http.NewRequest("GET", "http://api.themoviedb.org/3/tv/popular", nil)
req.Header.Add("Accept", "application/json")
resp, err := client.Do(req)
if err != nil {
fmt.Println("Errored when sending request to the server")
return
}
defer resp.Body.Close()
resp_body, _ := ioutil.ReadAll(resp.Body)
fmt.Println(resp.Status)
fmt.Println(string(resp_body))
}
In diesem Beispiel sehen Sie, dass es eine URL gibt, für die eine GET-Variable von api_key mit Ihrem API-Schlüssel als Wert erforderlich ist. Das Problem besteht darin, dass dies in Form von:
req, _ := http.NewRequest("GET", "http://api.themoviedb.org/3/tv/popular?api_key=mySuperAwesomeApiKey", nil)
Gibt es eine Möglichkeit, diese Abfragezeichenfolge dynamisch zu erstellen? Im Moment muss ich die URL vor diesem Schritt zusammenstellen, um eine gültige Antwort zu erhalten.