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