Go 웹 서버의 HandleFunc 호출 이상
페이지 방문을 추적하기 위해 간단한 Go 웹 서버를 구현할 때 개발자는 다음과 같은 당황스러운 동작에 직면했습니다. 핸들러 함수가 두 번 호출되었습니다. 요청을 기록하자 브라우저는 예상 루트 경로("/") 외에도 favicon.ico 파일도 요청하고 있는 것으로 나타났습니다.
Favicon 요청 및 핸들러 함수 호출
아이콘 파일(파비콘이라고도 함)은 웹사이트의 작은 그래픽 표현을 제공하며 종종 브라우저 탭과 북마크에 표시됩니다. 브라우저는 존재 여부에 관계없이 모든 웹사이트에 대해 자동으로 favicon.ico를 요청합니다. 파일을 사용할 수 없는 경우 브라우저는 일반적으로 기본 자리 표시자 이미지를 표시합니다.
주어진 예에서 웹 서버는 favicon.ico 파일을 제공하지 않았으므로 브라우저는 루트 경로("/")에서 파일을 요청했습니다. ) 대체용으로 사용됩니다. 서버의 HandleFunc는 루트의 모든 요청에 응답하도록 구성되어 핸들러 함수가 두 번 호출되었습니다(루트 경로에 대해 한 번, favicon.ico 요청에 대해 한 번).
해결책
이 문제를 해결하려면 개발자가 favicon.ico 파일을 생성하여 전용 경로에서 제공하거나 웹 서버가 무시하도록 명시적으로 구성할 수 있습니다. favicon.ico를 요청합니다.
위 내용은 Go 웹 서버의 핸들러 함수가 두 번 호출되는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!