Ruby에서 특정 코드 라이브러리를 사용할 때 구출해야 할 예외가 무엇인지 알지 못해 종종 혼자 있습니다.구출 할 예외를 아는 방법은 무엇입니까?
예를 들어, 필자는 필자의 레일/sinatra 응용 프로그램이 만들 HTTP 요청에 HTTParty를 자주 사용합니다. HTTParty 코드 주위를 파고 정의 된 예외가 포함 된 파일을 찾았습니다. 큰! 나는 요청할 때 그들을 구출 할 것이다.
테스트를 위해 요청에 대한 허위 도메인 이름을 넣었지만 예상 한 HTTParty :: ResponseError 예외 대신 SocketError 예외가 발생했습니다.
이 문제를 해결하는 가장 좋은 방법은 무엇입니까? 나는 HTTParty가 Ruby의 구현을 감싸는 래퍼이며 SocketError 예외를 던진 것임을 알고있다. 하지만 내가 어떻게 그걸 정상적으로 알 수 있겠 니?
"Exception"을 구제하여이 문제를 해결할 수는 있지만 꽤 힘든 일입니다. 나는 오히려 내가 그것들을 일으킬 수 있고 다루는 예외에 대해 잘 알고있을 것이다.
편집 : 실제로이 질문을 작성하게 된 것은 특정 기능을 호출 할 때 발생할 수있는 가능한 예외를 어떻게 파악할 수 있는지 알 수 없다는 것입니다. 스택의 모든 단일 함수 호출을 살펴 봅니다.
* 왜 * 예외를 구조 하시겠습니까? 프로그램에서 문제를 일으키는 경우 계속 처리하는 것이 무엇을 계획하고 있습니까? –