Skip to content
Client Plugin

BOM 제거기

필수 의존성: io.ktor:ktor-client-bom-remover

코드 예시: client-bom-remover

바이트 순서 표식(BOM)은 유니코드 파일 또는 스트림에 인코딩된 문자입니다. BOM의 주요 목적은 텍스트의 스트림 인코딩과 16비트 및 32비트 인코딩의 바이트 순서를 알리는 것입니다.

경우에 따라 응답 본문에서 BOM을 제거해야 합니다. 예를 들어, UTF-8 인코딩에서 BOM의 존재는 선택 사항이며, BOM을 처리하는 방법을 모르는 소프트웨어에서 읽을 때 문제를 일으킬 수 있습니다.

Ktor 클라이언트는 UTF-8, UTF-16 (BE), UTF-16 (LE), UTF-32 (BE) 및 UTF-32 (LE) 인코딩에서 응답 본문에서 BOM을 제거하는 BOMRemover 플러그인을 제공합니다.

BOM을 제거할 때 Ktor는 초기 응답의 길이를 유지하는 Content-Length 헤더를 변경하지 않는다는 점에 유의하십시오.

의존성 추가

BOMRemover를 사용하려면 ktor-client-bom-remover 아티팩트를 빌드 스크립트에 포함해야 합니다.

Kotlin
Groovy
XML

Ktor 클라이언트에 필요한 아티팩트에 대한 자세한 내용은

클라이언트 의존성 추가
Learn how to add client dependencies to an existing project.
에서 확인할 수 있습니다.

BOMRemover 설치

BOMRemover를 설치하려면 클라이언트 구성 블록 내의 install 함수에 전달하십시오.

kotlin
import io.ktor.client.*
import io.ktor.client.engine.cio.*
import io.ktor.client.plugins.compression.*
//...
val client = HttpClient(CIO) {
    install(BOMRemover)
}