J'ai donc rencontré ce problème aujourd'hui, où j'ai un site Web qui nécessite la géolocalisation de l'utilisateur. Cela fonctionnait bien lors de l'exécution locale sur localhost, mais un message d'erreur indiquant que l'accès à la géolocalisation est bloqué sur une connexion non sécurisée vers http: // localhost: 4200 est bloqué. WTF Apple? J'ai aussi essayé 127.0.0.1
mais j'ai obtenu le même résultat. Est-ce que quelque chose me manque dans les paramètres de développement ou Apple vient-il de tout casser?
Version Safari: 9.1.3 (11601.7.8)
Peut-être est-il possible d'utiliser https ( Comment obtenir un service angulaire sur HTTPS ) et si ce n'est pas possible directement pour une raison quelconque, vous pouvez utiliser un proxy transparent offrant https.
De nombreuses nouvelles fonctionnalités HTML5 telles que l'accès à la webcam, la géolocalisation et autres ne sont désormais autorisées que sur les pages servies via le système https. Par conséquent, l'utilisation de https fonctionnera probablement à nouveau. Sinon, il est peut-être possible de modifier le fichier hosts pour résoudre le problème.
J'ai trouvé une solution, mais c'est un peu fastidieux. J'utilise ngrok pour router mon serveur, puis la géolocalisation fonctionne bien. La seule chose que je n'aime pas, c'est qu'il a des limites (si vous utilisez un compte gratuit), comme vous ne pouvez pas actualiser souvent.
modifier:
Pour utiliser ngrok, téléchargez-le d'abord, puis sur le type de terminal
./ngrok http <port number>
exemple ngrok. Il vous montrera ensuite les routes d’URL. J'ai utilisé https. Allez à cette adresse.