P粉7757887232023-08-28 09:08:27
부분적인 답변은 있지만 안타깝게도 완전한 답변은 아닙니다.
먼저, getCurrentPosition의 기본 시간 제한 이 무한(!)이라는 점을 알아두세요. 즉, getCurrentPosition이 백엔드 어딘가에서 중단되면 오류 처리기가 절대 호출되지 않습니다.
시간 초과를 보장하려면 getCurrentPosition 호출에 선택적 세 번째 인수를 추가하세요. 예를 들어 무슨 일이 일어났는지 묻는 메시지가 표시되기 전에 사용자가 10초 이상 기다리지 않게 하려면 다음을 사용하세요. p> 으아악
둘째, 다양한 환경에서 전혀 다른 신뢰성을 경험했습니다. 집에서는 정확도가 낮았지만 1~2초 안에 응답 전화를 받았습니다.
그러나 직장에서 나는 다소 이상한 행동 변화를 경험합니다. 위치 정보는 일부 컴퓨터에서는 항상 작동하고(물론 IE는 제외), 다른 컴퓨터는 Chrome과 Safari에서만 작동하지만 Firefox에서는 작동하지 않습니다(게코 문제?), 기타 컴퓨터는 한 번만 작동하고 실패합니다. 이 패턴은 매시간, 매일 변경됩니다. 때때로 당신은 "운이 좋은" 컴퓨터를 가질 수도 있고, 때로는 그렇지 않을 수도 있습니다. 보름달이 뜨는 동안 염소를 도살하는 것이 도움이 될까요?
이해할 수 없지만, 이 기능을 추진하는 다양한 책과 웹사이트에서 백엔드 인프라가 광고된 것보다 더 불균형한 것 같다고 생각합니다. 이 기능이 얼마나 불안정한지, 그리고 오류 처리기가 제대로 작동하려면 시간 초과 설정이 얼마나 중요한지 좀 더 직접적으로 알려줬으면 좋겠습니다.
저는 오늘 이것을 학생들에게 가르치려고 노력했는데, 약 80%의 학생들이 거의 즉시 결과를 얻는 동안 내 컴퓨터(프로젝터와 두 개의 큰 화면에서)가 조용히 실패하는 당황스러운 상황에 직면했습니다. (완전히 동일한 무선 네트워크 사용). 학생들도 오타나 기타 실수를 할 때, 그리고 내 컴퓨터가 오작동할 때 이러한 문제를 해결하는 것은 매우 어렵습니다.