Maison >développement back-end >Golang >Comment implémenter la fonction d'interrogation des provinces et des villes de Golang
Dans le développement Web, interroger les provinces et les villes est un besoin courant, en particulier dans les scénarios commerciaux impliquant la localisation géographique. Dans Golang, la fonction d'interrogation des provinces et des villes peut être facilement réalisée en utilisant des bibliothèques tierces. Ensuite, cet article expliquera comment interroger les provinces et les villes de Golang.
1. Utiliser des bibliothèques tierces pour les requêtes
Dans Golang, la fonction d'interrogation des provinces et des villes peut être implémentée via des bibliothèques tierces. Voici le code de démonstration pour les requêtes à l'aide de beego/httplib :
``
. package main
import (
"fmt" "github.com/astaxie/beego/httplib"
)
func main() {
req := httplib.Get("http://restapi.amap.com/v3/ip?key=您的高德地图key") str, err := req.String() if err != nil { fmt.Println(err) return } fmt.Println(str)
}
``
Dans le code ci-dessus, nous utilisons la bibliothèque beego/httplib pour faire des requêtes et recevoir les résultats de retour sous forme de chaîne. L'URL dans le code doit être remplacée par votre propre clé de carte Amap. Vous pouvez vous inscrire et obtenir la clé sur la plateforme de développement Amap.
2. Analysez le résultat du retour pour obtenir des informations sur la province et la ville
Dans la section précédente, nous avons réussi à obtenir les informations sur la province et la ville, mais le résultat du retour est une chaîne et ne peut pas obtenir directement les données dont nous avons besoin. Dans cette section, nous présenterons comment analyser les résultats renvoyés pour obtenir des informations sur la province et la ville.
L'exemple de code est le suivant :
``
package main
import (
"fmt" "encoding/json" "github.com/astaxie/beego/httplib"
)
type MapResult struct {
Status string `json:"status"` Province string `json:"province"` City string `json:"city"`
}
func main() {
req := httplib.Get("http://restapi.amap.com/v3/ip?key=您的高德地图key") str, err := req.String() if err != nil { fmt.Println(err) return } fmt.Println(str) var result MapResult err = json.Unmarshal([]byte(str), &result) if err != nil { fmt.Println(err) return } fmt.Printf("当前所属省份:%s,城市:%s\n", result.Province, result.City)
}
在上述代码中,我们先定义了一个MapResult结构体用于存储返回结果中所需要的数据。接着,在获取返回结果后,通过json.Unmarshal()方法解析返回结果,并将解析后的数据存入MapResult结构体中,最终输出省份和城市信息。 三、总结
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!