1
休憩サービスを利用する1ページのアプリケーションがシンガポールに読み込まれ、アプリケーションが使用するREST /エッジサービスをホストする場所が2つあります(ニューヨークとシンガポールの2つです)。誰でも、最も近いデータセンターを選択できるようにするJavaScriptフレームワークを知っています(この場合はシンガポールでしょう)。Geolocationを使用したRESTサーバーの選択
休憩サービスを利用する1ページのアプリケーションがシンガポールに読み込まれ、アプリケーションが使用するREST /エッジサービスをホストする場所が2つあります(ニューヨークとシンガポールの2つです)。誰でも、最も近いデータセンターを選択できるようにするJavaScriptフレームワークを知っています(この場合はシンガポールでしょう)。Geolocationを使用したRESTサーバーの選択
使用このアルゴリズムにより、経度の位置緯度現在のデバイスを取得し、その後、距離を比較リストと最短
を選びますfunction getDistanceFromLatLonInKm(lat1,lon1,lat2,lon2) {
var R = 6371; // Radius of the earth in km
var dLat = deg2rad(lat2-lat1); // deg2rad below
var dLon = deg2rad(lon2-lon1);
var a = Math.sin(dLat/2) * Math.sin(dLat/2) + Math.cos(deg2rad(lat1)) * Math.cos(deg2rad(lat2)) * Math.sin(dLon/2) * Math.sin(dLon/2);
var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));
var d = R * c; // Distance in km
return d;
}
function deg2rad(deg) {
return deg * (Math.PI/180)
}
私はこの答えを愛して - 私の子供が今まで三角法のものが何のためにあるのか私に言わせれば - これは完璧な例です。 – Ole
すごくおかげだよ:) –