Skip to content
Client Plugin

BOM 移除器

所需相依性: io.ktor:ktor-client-bom-remover

程式碼範例: client-bom-remover

位元組順序標記 (BOM) 是一種在 Unicode 檔案或資料流中編碼的字元。BOM 的主要目的是標示文字資料流的編碼以及 16 位元和 32 位元編碼的位元組順序。

在某些情況下,需要從回應本文中移除 BOM。例如,在 UTF-8 編碼中,BOM 的存在是可選的,當由不清楚如何處理 BOM 的軟體讀取時,它可能會造成問題。

Ktor 用戶端提供了 BOMRemover 外掛程式,該外掛程式可從 UTF-8、UTF-16 (BE)、UTF-16 (LE)、UTF-32 (BE) 和 UTF-32 (LE) 編碼的回應本文中移除 BOM。

請注意,當移除 BOM 時,Ktor 不會更改 Content-Length 標頭,該標頭會保留初始回應的長度。

新增相依性

若要使用 BOMRemover,您需要將 ktor-client-bom-remover artifact 納入建置腳本中:

Kotlin
Groovy
XML

您可以從

新增用戶端相依性
瞭解如何將用戶端相依性新增到現有專案。
中瞭解更多關於 Ktor 用戶端所需的 artifact 資訊。

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