2016-09-30 52 views
20

Tak więc dzisiaj spotkałem się z tym problemem, gdy mam witrynę, która potrzebuje geolokalizacji użytkownika. Działało dobrze, gdy działa lokalnie na localhost, ale teraz pojawia się komunikat "Dostęp do geolokalizacji został zablokowany przez niezabezpieczone połączenie z http://localhost:4200". WTF Apple? Próbowałem też 127.0.0.1, ale otrzymałem ten sam wynik. Czy brakuje mi czegoś w ustawieniach deweloperów, czy Apple po prostu wszystko zepsuł?Safari Localhost Zablokowano uprawnienie

Safari wersja: 9.1.3 (11601.7.8)

+1

Ta kwestia dotyczy również rozwoju jonowego. Wydaje się, że Safari blokuje nawet localhost, w którym Chrome zezwala na geolokalizację na serwerze localhost. Nieprzydatne, jeśli twój rozwój jest ulubioną przeglądarką Safari. –

+0

Tak, to jest zdecydowanie błąd Safari, po prostu sprawia, że ​​testowanie tego jest o wiele trudniejsze. – trev9065

+0

Mając ten sam problem, czy kiedykolwiek znaleziono rozwiązanie? – halfacreyum

Odpowiedz

0

Może to możliwe użycie https (How to get angular-cli to ng serve over HTTPS), a jeśli nie jest to możliwe bezpośrednio z jakiegoś powodu może można użyć przezroczyste proxy, który oferuje https.

Wiele nowych funkcji HTML5, takich jak dostęp do kamery internetowej, geolokalizacja i inne są teraz dozwolone tylko na stronach obsługiwanych przez schemat https, więc prawdopodobnie za pomocą https będzie działać ponownie. Jeśli nie, być może można zmodyfikować plik hosts, aby obejść problem.