오늘도 더 나은 코드를 작성하였습니까?

Ktor Intercepting requests using HttpSend 본문

Ktor

Ktor Intercepting requests using HttpSend

hik14 2022. 7. 19. 19:15

HttpSend 플러그인을 사용하면 응답에 따라 HTTP 호출을 모니터링하고 재시도할 수 있습니다. 

예를 들어, 서버가 오류 응답(4xx 또는 5xx 상태 코드 포함)을 반환하는 경우 호출 로깅을 구현하거나 요청을 재시도할 수 있습니다.

HttpSend 플러그인은 설치가 필요하지 않습니다. 

사용하려면 HttpSend를 HttpClient.plugin 함수에 전달하고 intercept 메서드를 호출합니다. 아래 예는 응답 상태 코드에 따라 요청을 재시도하는 방법을 보여줍니다.

 

val client = HttpClient(Apache)
client.plugin(HttpSend).intercept { request ->
    val originalCall = execute(request)
    if (originalCall.response.status.value !in 100..399) {
        execute(request)
    } else {
        originalCall
    }
}

 

'Ktor' 카테고리의 다른 글

Ktor Receiving responses  (0) 2022.07.20
Ktor Default request  (0) 2022.07.19
Cookie  (0) 2022.07.19