Comment effectuer des requêtes GET avec des chaînes de requête dans Go
Créer des requêtes GET avec des chaînes de requête dynamiques dans Go peut être délicat pour les débutants. Dans cet article, nous explorerons une approche simple mais efficace pour réaliser cette tâche.
Considérez le scénario suivant : vous devez envoyer une requête GET à un point de terminaison d'API qui nécessite un paramètre de requête "api_key". Le codage en dur de la clé API dans l'URL de la requête n'est pas idéal, car cela limite la flexibilité et la sécurité.
Pour surmonter ce défi, nous pouvons tirer parti du package net/url de Go. Ce package fournit le type url.Values, qui nous permet de manipuler les paramètres de requête de manière dynamique.
Voici comment nous pouvons modifier notre exemple de script pour créer et encoder une chaîne de requête :
package main import ( "fmt" "log" "net/http" "os" "url" ) func main() { req, err := http.NewRequest("GET", "http://api.themoviedb.org/3/tv/popular", nil) if err != nil { log.Print(err) os.Exit(1) } q := req.URL.Query() q.Add("api_key", "KEY_FROM_ENV_OR_FLAG") q.Add("another_thing", "foo & bar") req.URL.RawQuery = q.Encode() fmt.Println(req.URL.String()) }
Dans cet exemple :
Ceci Cette approche nous permet de créer et d'encoder dynamiquement des chaînes de requête, en maintenant la flexibilité et la sécurité en séparant la clé API de l'URL de la requête.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!