Maison > développement back-end > Golang > Comment implémenter la fonction d'interrogation des provinces et des villes de Golang

Comment implémenter la fonction d'interrogation des provinces et des villes de Golang

PHPz
Libérer: 2023-04-14 13:57:39
original
1165 Les gens l'ont consulté

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"
Copier après la connexion

)

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)
Copier après la connexion

}
``

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"
Copier après la connexion

)

type MapResult struct {

Status   string `json:"status"`
Province string `json:"province"`
City     string `json:"city"`
Copier après la connexion

}

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)
Copier après la connexion

}

在上述代码中,我们先定义了一个MapResult结构体用于存储返回结果中所需要的数据。接着,在获取返回结果后,通过json.Unmarshal()方法解析返回结果,并将解析后的数据存入MapResult结构体中,最终输出省份和城市信息。

三、总结
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal