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)
}