> 백엔드 개발 > Golang > Go에서 오류 메시지를 효과적으로 비교하는 방법은 무엇입니까?

Go에서 오류 메시지를 효과적으로 비교하는 방법은 무엇입니까?

Barbara Streisand
풀어 주다: 2024-12-14 04:38:10
원래의
462명이 탐색했습니다.

How to Effectively Compare Error Messages in Go?

Go에서 오류 메시지 비교

Java에서는 Exception 클래스의 GetMessage() 메서드를 사용하여 오류 메시지를 검색할 수 있습니다. 그러나 Go에서는 오류 메시지에 다르게 접근합니다.

오류 메시지를 비교하는 방법

Go에서 오류 메시지를 비교하려면 다음 단계를 따르세요.

  1. 패키지 수준 오류 선언 변수:
var errExample = errors.New("this is an example")
로그인 후 복사
  1. 이 오류 값을 반환합니다.

오류가 발생하면 패키지 수준을 반환합니다. 사용자 정의 문자열 대신 오류 변수 메시지:

return errExample
로그인 후 복사
  1. 이 값과 비교:

특정 오류를 확인하려면 반환된 오류를 패키지와 비교할 수 있습니다. -레벨 오류 변수:

if err == errExample {
    // handle it
}
로그인 후 복사

외부 오류 처리 패키지

외부 패키지의 오류를 비교해야 하는 경우 오류 변수를 내보낼 수 있습니다.

var ErrExample = errors.New("this is an example")
로그인 후 복사

그런 다음 코드에서 내보낸 오류 변수를 사용하세요.

if err == somepackage.ErrExample {
    // handle it
}
로그인 후 복사

사용을 자제하세요 Error.Error()

오류의 Error() 메서드에서 반환된 문자열과 비교하지 마세요. 오류 메시지가 예고 없이 변경될 수 있으므로 코드가 취약해질 수 있습니다. 대신 위에서 설명한 권장 접근 방식을 사용하세요.

위 내용은 Go에서 오류 메시지를 효과적으로 비교하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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