diff --git a/platformapi/autonavi/autonavi_page.go b/platformapi/autonavi/autonavi_page.go index 3824f4d3..fa0e3736 100644 --- a/platformapi/autonavi/autonavi_page.go +++ b/platformapi/autonavi/autonavi_page.go @@ -54,10 +54,12 @@ func (a *API) GetCoordinateFromAddressByPage(address string) (lng, lat float64, "keywords": address, }) if err == nil { - str := result["pois"].([]interface{})[0].(map[string]interface{})["location"].(string) - strs := strings.Split(str, ",") - if len(strs) > 0 { - return utils.Str2Float64(strs[0]), utils.Str2Float64(strs[1]), err + if len(result["pois"].([]interface{})) > 0 { + str := result["pois"].([]interface{})[0].(map[string]interface{})["location"].(string) + strs := strings.Split(str, ",") + if len(strs) > 0 { + return utils.Str2Float64(strs[0]), utils.Str2Float64(strs[1]), err + } } } return lng, lat, err diff --git a/platformapi/autonavi/autonavi_page_test.go b/platformapi/autonavi/autonavi_page_test.go index dd4a6a02..f789a535 100644 --- a/platformapi/autonavi/autonavi_page_test.go +++ b/platformapi/autonavi/autonavi_page_test.go @@ -7,7 +7,7 @@ import ( ) func TestGetCoordinateFromAddressByPage(t *testing.T) { - lng, lat, err := autonaviAPI.GetCoordinateFromAddressByPage("广东深圳市龙华区观澜街道观澜社会福利中心1340号") + lng, lat, err := autonaviAPI.GetCoordinateFromAddressByPage("北京西城区内环到二环里西单大木仓胡同35号西五楼4-503") if err != nil { t.Fatal(err) } diff --git a/platformapi/autonavi/autonavi_test.go b/platformapi/autonavi/autonavi_test.go index c7f6cd88..e9c2675c 100644 --- a/platformapi/autonavi/autonavi_test.go +++ b/platformapi/autonavi/autonavi_test.go @@ -85,7 +85,7 @@ func TestGetDistricts(t *testing.T) { } func TestGetCoordinateFromAddress(t *testing.T) { - lng, lat, districtCode := autonaviAPI.GetCoordinateFromAddress("广东深圳市龙华区观澜街道观澜社会福利中心1340号", "深圳市") + lng, lat, districtCode := autonaviAPI.GetCoordinateFromAddress("四川成都市武侯区城区天府三街与云华路交汇处大有智慧2栋1单元1101号", "") t.Logf("lng:%f, lat:%f, districtCode:%d", lng, lat, districtCode) }