Geolocation-ohne Aufforderung

Weiß ich über die HTML5 Weise zu tun, geolocation, aber der Nachteil ist, dass es den Benutzer auffordern, für die Erlaubnis.

navigator.geolocation.getCurrentPosition

Wird es besonders ärgerlich ist, wenn ich tun möchte, geolocation rechts auf der Startseite zu dienen, personalisierte Inhalte basierend auf dem Standort: niemand mag eine Eingabeaufforderung jedes mal, wenn er Ihre Website besucht.

Die Idee ist, externe Dienste zu tun, geolocation anhand der IP-Adresse oder etwas ähnliches, um eine weniger genaue Schätzung der Position des Benutzers und geben dem Benutzer eine Eingabeaufforderung nur, wenn dieser Ort wirklich aus. Gibt es irgendwelche guten Vorschläge für die Dienstleistungen, die ich für diesen Zweck nutzen kann?

Ich weiß, Google hat das auch schon gemacht: aktuelle Lage. Es zeigt deine aktuelle Position an, ohne dass Sie keine Eingabeaufforderung. Weiß jemand, wie dies zu tun?

Der MaxMind-Datenbank ist gut, aber das würde erfordern die Pflege von einem riesigen IP-Datenbank für genau diesen Zweck. Eine API oder einen Google-Dienst bevorzugt wird.

Ich derzeit verwenden Sie das location-Objekt zurückgegeben, die von der Google-Loader zur Abschätzung der Lage, aber es ist weniger genau als die Google-Suche Beispiel oben.

google.loader.ClientLocation.latitude
google.loader.ClientLocation.longitude
  • Google zeigt mir eine Stadt in den Staat von mir, zu Fragen, während für den Standort eines Benutzers ist wahrscheinlicher, um genau zu sein. Warum nicht einfach mal Fragen, und speichern Sie es?
  • Ich bin das bereitstellen von Inhalten, macht Gebrauch von der aktuellen Position auf der homepage. Es würde schwierig sein, zu geben eine Eingabeaufforderung für erstmalige Besucher. Ich werde natürlich speichern Sie diese info, wenn ich bin sicher, dass seine oder Ihre Lage.
  • Für Bedenken hinsichtlich der Privatsphäre diese Daten nicht abgeholt werden, wird aus dem browser, ohne dass der Benutzer zum ersten mal. Mithilfe der IP-basierten Diensten ist Ihre beste Wette, aber es hat seinen eigenen besten Vermutungen. Auch last ich habe (2-3 Jahre her) wurde es angeboten als Kostenpflichtiger service. Ich erinnere mich nicht an die Dienste habe ich überprüft, obwohl, sorry.
  • Ich merke so etwas wie die Google Geolocation API. Aber ich fürchte, ich kann nicht genug (finanzielle) Ressourcen für die, die im moment.
  • Mögliche Duplikate von js-geolocation-aber ohne Nachfrage - möglich?
  • Warum nicht speichern Sie die lat-und long-Antwort in einem cookie? Überprüfen Sie, ob Sie die Cookies jedes mal, wenn der Benutzer lädt die Seite hoch? Wenn das cookie nicht vorhanden ist oder wenn er null ist (abgelehnt), dann haben Sie entweder nie erlaubt, Ihre browser bieten die lat und long oder absichtlich nicht zugelassen hat, Dann ist die html5-geolocation-Methode nicht aufgerufen wird. Voila.
  • Nein, ich muss wissen, Ihre aktuelle position, wenn Sie das erste mal die Seite betreten. Wenn das cookie nicht vorhanden ist und ich nicht rufen Sie die geolocation-Methode, voila, ich habe keine Ahnung, wo der Benutzer ist. Wenn ich die Methode aufrufen, ich habe nur noch genervt alle das erste mal Besucher. Cookie kann nicht lösen das problem mit dem ersten mal Besucher.
  • Was ich gemacht habe, ist in diesem Fall versuchen, die nächsten Ungefähre geolocation-basierend auf Ihrer IP-Adresse mit Hilfe eines käuflich erworbenen Datenbank von IPs. Verständnis, dass IP-geolocation nicht so genau, wir haben dann die option Hinzugefügt, um zu ändern Ihre Lage durch browser-API und dann gespeichert, dass Sie in Ihrem computer in einem cookie für zukünftige Besuche. Das ist das beste, was Sie tun können, ohne der Verletzung der Privatsphäre Maßnahmen integriert in den browser.

InformationsquelleAutor Antony | 2012-12-24
Schreibe einen Kommentar