2016-07-24 6 views
0

ユーザーがイーサネット経由で接続されたデスクトップPCを使用し、Googleアカウント(Chrome)でログインしている場合は、maps.google.com上のデバイスの場所が表示されますが、JS(navigator.geolocation) getCurrentPosition ...)それは別の場所を表示します(私はそれがインターネットプロバイダの場所と思われます)。 Googleマップを使用して正確な位置情報を取得するにはどうすればよいですか?ユーザーがGoogleアカウントを使用してログインしている場合、Chromeで正確なユーザーの位置情報を取得することは可能ですか?

答えて

0

はい、Google Maps Geolocation APIは、モバイルクライアントが検出できるセルタワーとWiFiノードに関する情報に基づいて、位置と精度の半径を返します。このドキュメントでは、このデータをサーバーに送信し、クライアントに応答を返すために使用されるプロトコルについて説明します。

POSTを使用してHTTPS経由で通信が行われます。リクエストとレスポンスの両方がJSON形式であり、両方のコンテンツタイプがapplication/jsonです。

HTTPリクエスト:

https://www.googleapis.com/geolocation/v1/geolocate?key=YOUR_API_KEY 

成功したジオロケーション要求がロケーションと半径を規定するJSON形式の応答を返します。

  • 場所:ユーザーの推定緯度および経度(度)。 1つのlatフィールドと1つのlngサブフィールドが含まれます。
  • 精度:推定位置の精度(メートル単位)。これは、指定された場所の周りの円の半径を表します。

{ "場所":{ "LAT":51.0、 "LNG":-0.1}、 "精度":1200.4}

あなたのジオロケーション応答は、非常に高い値を示す場合精度フィールドでは、サービスは、WiFiポイントまたはセルタワーの代わりに、要求IPに基づいて地理位置を特定することができる。これは、セルタワーまたはアクセスポイントが有効でないか認識されていない場合に発生します。

関連する問題