亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

解析來自 Google 地圖的 JSON 響應

解析來自 Google 地圖的 JSON 響應

Go
繁花如伊 2023-08-14 17:47:11
我需要創建一個代理服務器來連接到谷歌地圖網絡服務,我發現一個教程可以完成我大約 95% 的需要。該教程使用golang,我對golang幾乎完全陌生,如果我完全按照它操作,它就可以正常工作。但是當我嘗試更改教程中的某些內容時,我顯然把一些事情搞砸了,哈哈。我現在需要的問題是,本教程僅解析 google-maps 響應中的 2 個變量,即緯度和經度。對于我的應用程序的其余部分,我還需要地點 ID。我收到了谷歌地圖的回復,這不是問題。如果我將其解析為type placeResults struct {    Results []struct {        Geometry struct {            Location struct {                Lat float64 `json:"lat"`                Lng float64 `json:"lng"`            } `json:"location"`        } `json:"geometry"`    } `json:"results"`}它工作正常,給了我經度和緯度,不用擔心。但如果我嘗試,type placeResults struct {    Results []struct {        Geometry struct {            Location struct {                Lat float64 `json:"lat"`                Lng float64 `json:"lng"`            } `json:"location"`        } `json:"geometry"`        id struct {            Id string `json:"id"`        }    } `json:"results"`}它告訴我:json: 無法將字符串解組到 Go 結構字段 .Id 類型為 struct { Id string "json:\"id\"" }現在 id 變量不是幾何的一部分,而是響應的通用部分,所以我認為這將是正確的語法。顯然我錯了。但是包含這個的正確語法是什么?
查看完整描述

1 回答

?
慕絲7291255

TA貢獻1859條經驗 獲得超6個贊

Google Place API 響應看起來像,


      "geometry" : {

         "location" : {

            "lat" : -33.866651,

            "lng" : 151.195827

         },

         "viewport" : {

            "northeast" : {

               "lat" : -33.8653881697085,

               "lng" : 151.1969739802915

            },

            "southwest" : {

               "lat" : -33.86808613029149,

               "lng" : 151.1942760197085

            }

         }

      },

      "icon" : "https://maps.gstatic.com/mapfiles/place_api/icons/generic_business-71.png",

      "id" : "4f89212bf76dde31f092cfc14d7506555d85b5c7",

所以你需要將 id 字段聲明為字符串,而不是結構。您需要更改 placeResult 結構。


type modifiedPlaceResult struct {

    Geometry struct {

        Location struct {

            Lat float64 `json:"lat"`

            Lng float64 `json:"lng"`

        } `json:"location"`

    } `json:"geometry"`


    Id string `json:"id"`

}

嘗試使用modifiedPlaceResult結構來解組數據,一切都會好的。我附上了 Go Playground 的示例:https ://play.golang.org/p/Q4rM-jluoFe


查看完整回答
反對 回復 2023-08-14
  • 1 回答
  • 0 關注
  • 196 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號