Supposons une application d'une seule page qui consomme des services de repos est chargé à Singapour et il y a deux emplacements possibles d'hébergement des services REST/bord que l'application consomme, un à New York et un à Singapour. Quelqu'un sait-il un framework javascript qui permettrait à l'application de sélectionner le centre de données le plus proche (dans ce cas, ce serait Singapour)?Sélection d'un serveur REST en utilisant Géolocalisation
1
A
Répondre
2
- La surcharge de l'application permet aux centres de données d'être transférés dans l'appel de repos http.
- Obtenez votre appareil actuel lat position LON par Cordova géolocalisation ou tout autre plug-in
Utilisez cet algorithme pour calculer la distance dans votre appareil lui-même entre toute la liste des centres de données et dispositif emplacement actuel puis liste la distance et de choisir la plus courte
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) }
J'aime cette réponse - si mes enfants me demandent jamais ce que les choses de la trigonométrie est pour - c'est l'exemple parfait. – Ole
Super et merci mec :) –