2014-02-15 51 views
0

我嘗試使用谷歌的地理編碼的API地址轉換爲經度和latitude.but我得到這個例外嘗試使用谷歌的地理編碼API

遠程名稱越來越例外無法解析:「地圖。 googleapis.com' 描述:在執行 當前Web請求期間發生未處理的異常。請查看堆棧跟蹤以獲取有關該錯誤的更多信息以及源代碼的位置。

異常詳細信息:System.Net.WebException:遠程名稱無法 解析:maps.googleapis.com'

以下行

Address[] addresses = geocoder.Geocode("1600 pennsylvania ave washington dc").ToArray(); 

我沒有得到請問有人幫助我。

+0

那麼你看看異常堆棧跟蹤? –

+0

檢查您的事件日誌。問題可能來自無效的url(主機名)到防火牆或代理服務器阻止請求,甚至是配置錯誤的主機文件或DNS。根據Vigneshes的回答,有時如果你在web.config中指定代理,你的問題就會消失。 –

回答

0

請爲C#嘗試以下代碼。如果您不打電話給雅虎和Bing,爲什麼不直接撥打Google GeoService並讓您的項目更加精益。

string uri = "https://maps.googleapis.com/maps/api/geocode/json?address=123+Some+Adress,My+City,ST,12345&key=googleKey"; 

    HttpWebRequest req = (HttpWebRequest)WebRequest.Create(uri); 
    req.Method = "GET"; 
    req.Accept = "application/json"; 
    req.ContentType = "application/json"; 

    HttpWebResponse resp = (HttpWebResponse)req.GetResponse(); 
    var request = WebRequest.Create(requestUri); 
    var response = request.GetResponse(); 
    var xdoc = response.GetResponseStream(); 
    String resposne = new StreamReader(xdoc).ReadToEnd(); 
0

我也面臨同樣的問題。如果您與局域網連接並受代理服務器保護,請在Google Chrome瀏覽器設置中啓用。我們的系統採用谷歌瀏覽器的默認設置。在chrome的設置中,進入代理設置。點擊Lan設置。點擊代理設置複選框並點擊通過代理服務器獲取本地地址。也可以在文本框中填寫代理服務器的詳細信息。提前並在異常字段類型localhost.Run項目再次。它會工作。

+0

請不要將與多個問題完全相同的答案(既不是直接複製也不是鏈接)發佈出去:它不是很適合所有問題,或者問題是應該標記/關閉的重複問題。 – kleopatra

+0

但這是我自己的答案。我通過這種方式得到了解決方案。有很多問題具有相同的答案,那麼我們可以做什麼.... –

1

由於系統中的代理設置,此事發生。請將此代碼添加到您的web.config文件中,它將起作用。

<system.net> 
    <defaultProxy enabled="true" useDefaultCredentials="true"> 
    </defaultProxy> 
</system.net>