如果我通過Google地圖或bing地圖API獲取Point的lon和lat,那麼該變量的最大和最小有效值是多少?什麼是lon&lat的有效值
我想在將lon和lat存儲到數據庫之前檢查一些用戶輸入。
如果我通過Google地圖或bing地圖API獲取Point的lon和lat,那麼該變量的最大和最小有效值是多少?什麼是lon&lat的有效值
我想在將lon和lat存儲到數據庫之前檢查一些用戶輸入。
假設,這些值對應於經度和緯度:
經度是-180°至180°和-90°和90°之間的緯度之間。
我想你會發現它是地球,或者更確切地說人類的數學定義中定義了一個具有360度的圓,它定義了經度和緯度的最大值和最小值。緯度範圍從-90到90,經度從-180到180.
但是,在網絡映射中,關於座標系統往往存在很多混淆。谷歌地圖使用一種叫做網站mercator的東西,這是一個投影座標系統,即以米爲單位,假設球形地球。
編輯:是的,Bing也使用Web墨卡託表示在地球上的位置,也被稱爲EPSG 900913或3857的官方名稱。我個人的觀點是Google Maps API更好用,而且映射的質量更高,尤其是現在他們已經引入了基於矢量的瓦片。
Google和Bing都需要了解的一個重大問題是,我不能建議,這是由於派生數據的所有權 - 即法律上的考慮以及技術上的考慮。
我使用了一個庫調用OpenLayers這是一個非常功能齊全的地圖API,但不附帶任何內置的映射 - 所以你要麼必須提供自己的WMS或使用somehthing像Open Street Map(這是非常好的世界上最發達的地區,但在其他地方有所欠缺)。還有其他選項,比如Leaflet,它們的重量略輕於OpenLayers,但足以滿足許多需求。
感謝Google的提示。我不確定現在使用哪個API。 Google或Bing。兩者是否都處理相同的座標? –
@Leparevillo。我更新了我的帖子來回答你的問題,因爲評論太長了。 –
你使用的是什麼分貝。 MongoDB作爲網絡映射後端似乎越來越流行,它檢查值是否在經緯度的正確範圍內。您可以在其他空間啓用的數據庫(如Postgres/Postgis)上設置類似的約束,這並不是說檢查客戶端是一個壞主意。 –
這進入了.NET Web API。我必須檢查一切,客戶將進入。永遠不要相信用戶輸入...當提供無效數據時,ASP.NET Web Api會引發醜陋的豁免... –
是的,並不是建議您不要檢查,只是說您可以在後端進行額外的數據完整性檢查。 –