如何通過經緯度獲取位址資訊?

2021-06-19 05:58:23 字數 3229 閱讀 7320

google maps api web services,是乙個為您的地圖應用程式提供地理資料的 google 服務的 http 介面集合。具體包括:google geocoding api、google directions api、google elevation api、google places api。本文將**如何通過google geocoding api服務來獲取位址資訊。

google maps api 提供這些網路服務作為從外部服務中請求 google maps api 資料以及在您的地圖應用程式中使用它們的介面。這些網路服務使用特定**的 http 請求並將**引數作為引數提供給服務。一般來講,這些服務會在 http 請求中以 json 或 xml 的形式傳回資料,供您的應用程式進行解析和/或處理。

乙個典型的網路服務請求通常採用以下形式:

其中service表示所請求的特定服務,output表示響應格式(通常為jsonxml)。

位址解析是將位址(如「1600 amphitheatre parkway, mountain view, ca」)轉換為地理座標(如緯度 37.423021 和經度 -122.083739)的過程,您可以根據轉換得到的座標放置標記或定位地圖。google geocoding api 可讓您通過 http 請求直接訪問位址解析器。此外,該服務還可讓您執行反向操作(將座標轉換為位址),此過程稱為「反向位址解析」(位址查詢)

google geocoding api 請求必須採用以下形式:

其中,output可以是以下值之一:

有些引數是必需的,有些是可選的。根據**的標準,所有引數均使用字元 & (&) 分隔。下面列舉了這些引數及其可能的值。

注意:boundsregion引數只會影響位址解析器返回的結果,但不能對其進行完全限制。

例項一:建立查詢座標(39.910093,116.403945)的位址資訊的請求,要求以xml格式輸出響應,語言為簡體中文(zh-cn)。

注意:經緯度書寫的順序為(緯度,經度)。

例項二:利用c#在客戶端程式中建立上述請求。

1 webclient client = new webclient();

2string url = "

";3 client.encoding = encoding.utf8;

4string responsetest = client.downloadstring(url);

位址解析響應將以**請求路徑中的output標記所指示的格式傳回。xml 響應包含乙個和兩個頂級元素:

位址解析響應物件中的"status"字段包含請求的狀態,並且可能包含除錯資訊,以幫助您追溯位址解析未正常工作的原因。

"status"字段可能包含以下值:

例項一:在ie瀏覽中輸入上述例項一中的請求,檢視響應結果。

瀏覽器中顯示如下資訊(該截圖只是響應結果的部分資訊):

例項二:通過控制台輸出上述例項二的響應。

c#**:

1

using system;

2using system.collections.generic;

3using system.linq;

4using system.text;

5using system.net;67

namespace geocodetest

8 ",responsetest);

1920 console.read();

2122 }

23 }

24 }

輸出結果(該截圖只是響應結果的部分資訊):

第一步:判斷status的狀態資訊。

第二步:獲取formatted_address位址資訊。

注意:formatted_address是乙個字串,包含此位置的人類可讀位址。通常該位址相當於「郵政位址」,有時會因不同國家/地區而存在差異。

實現**如下:

1

using system;

2using system.collections.generic;

3using system.linq;

4using system.text;

5using system.net;

6using system.xml;78

namespace geocodetest

9 39

40 }

4142

43 console.read();

4445 }

46 }

47 }

輸出結果:

通過經緯度獲取位址資訊

google maps api web services,是乙個為您的地圖應用程式提供地理資料的 google 服務的 http 介面集合。具體包括 google geocoding api google directions api google elevation api google plac...

根據經緯度座標獲取位址資訊

獲取地理位置名稱 param location 經緯度座標,經度在前,緯度在後,經緯度間以 分割 return public static string getaddressnamebygeocoder1 string location 向指定url傳送get方法的請求 param url 傳送請求...

經緯度查位址與位址查經緯度

geocoding是googole提供的一項服務,主要有兩個功能 1.查詢某位址的經緯度 2.查詢經緯度的具體位址 geocoder物件 geocoder的替代品 googlegeocodingapi 根據位址查詢經緯度 上海市春曉路350號 sensor false bounds的作用 在指定的經...