> 백엔드 개발 > Golang > `net/http` 패키지를 사용하여 Go에서 사용자 정의 404 오류 페이지를 구현하는 방법은 무엇입니까?

`net/http` 패키지를 사용하여 Go에서 사용자 정의 404 오류 페이지를 구현하는 방법은 무엇입니까?

DDD
풀어 주다: 2024-12-18 03:15:09
원래의
821명이 탐색했습니다.

How to Implement Custom 404 Error Pages in Go using the `net/http` Package?

Net/HTTP 패키지를 사용하여 사용자 정의 404 오류 페이지 구현

사용자가 존재하지 않는 URL로 이동하면 기본 동작은 웹 서버는 일반적인 "404 페이지를 찾을 수 없음" 메시지를 표시합니다. 사용자 경험을 향상시키기 위해 더 많은 정보를 제공하거나 사용자를 관련 대상으로 리디렉션하는 사용자 정의 404 페이지를 생성할 수 있습니다.

이 시나리오에서는 제공된 단순화된 코드를 사용하여:

package main

import (
    "fmt"
    "net/http"
)

func main() {
    http.HandleFunc("/", homeHandler)
    http.HandleFunc("/smth/", smthHandler)
    http.ListenAndServe(":12345", nil)
}

func homeHandler(w http.ResponseWriter, r *http.Request) {
    if r.URL.Path != "/" {
        errorHandler(w, r, http.StatusNotFound)
        return
    }
    fmt.Fprint(w, "welcome home")
}

func smthHandler(w http.ResponseWriter, r *http.Request) {
    if r.URL.Path != "/smth/" {
        errorHandler(w, r, http.StatusNotFound)
        return
    }
    fmt.Fprint(w, "welcome smth")
}

func errorHandler(w http.ResponseWriter, r *http.Request, status int) {
    w.WriteHeader(status)
    if status == http.StatusNotFound {
        fmt.Fprint(w, "custom 404")
    }
}
로그인 후 복사

모든 HTTP 오류를 처리하는 데 사용되는 errorHandler 함수는 http.StatusNotFound 오류 코드를 반환하고 원하는 내용을 ResponseWriter.

이 예에서 errorHandler 함수는 404 오류 상태가 감지되면 사용자 정의 메시지 "custom 404"를 반환합니다. 이를 통해 기본 "404 페이지를 찾을 수 없음" 메시지를 보다 사용자 친화적이고 유익한 페이지로 바꿀 수 있습니다.

또한 오류 처리기 기능을 확장하여 다른 HTTP 오류를 포착하고 다음과 같은 사용자 정의 오류 처리를 구현할 수 있습니다. 오류 로깅, 이메일 알림 전송, 사용자를 특정 오류 페이지로 리디렉션 등이 있습니다.

위 내용은 `net/http` 패키지를 사용하여 Go에서 사용자 정의 404 오류 페이지를 구현하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿