ホームページ > バックエンド開発 > Golang > Golangで州や市をクエリする機能を実装する方法

Golangで州や市をクエリする機能を実装する方法

PHPz
リリース: 2023-04-14 13:57:39
オリジナル
1160 人が閲覧しました

Web 開発では、特に地理的位置が関係するビジネス シナリオでは、州や都市のクエリは一般的な要件です。 Golang では、サードパーティのライブラリを使用することで、州や都市をクエリする機能を簡単に実現できます。次に、この記事では Golang で州や都市をクエリする方法を紹介します。

1. クエリにサードパーティ ライブラリを使用する

Golang では、州や都市をクエリする機能はサードパーティ ライブラリを通じて実装できます。以下は 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)
ログイン後にコピー

}
``

上記のコードでは、beego/httplib ライブラリを使用してリクエストを行い、戻り結果を文字列形式で受け取ります。コード内の URL は、Amap 開発者プラットフォームに登録して取得できる独自の Amap マップ キーに置き換える必要があります。

2. 返された結果を解析して州と都市の情報を取得する

前のセクションでは、州と都市の情報を正常に取得しましたが、返された結果は文字列であるため、直接取得できません。必要なもの、それはデータです。このセクションでは、返された結果を解析して州と都市の情報を取得する方法を紹介します。

サンプル コードは次のとおりです。

``
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结构体中,最终输出省份和城市信息。

三、总结
ログイン後にコピー

以上がGolangで州や市をクエリする機能を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート