Merge pull request #707 from kiwix/698-display-of-utf-8-chars-in-textplain-zim-entry-is-not-correct

Add UTF-8 encoding to HTTP headers for text/plain
This commit is contained in:
Kelson 2024-03-22 03:04:29 +01:00 committed by GitHub
commit f034c02934
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 9 additions and 1 deletions

View File

@ -146,6 +146,14 @@ struct URLContent {
let start: UInt
let end: UInt
let size: UInt
var httpContentType: String {
if mime == "text/plain" {
return "text/plain;charset=UTf-8"
} else {
return mime
}
}
}
final class ZimFile: NSManagedObject, Identifiable {

View File

@ -76,7 +76,7 @@ final class KiwixURLSchemeHandler: NSObject, WKURLSchemeHandler {
}
private func sendHTTP200Response(_ urlSchemeTask: WKURLSchemeTask, url: URL, content: URLContent) {
let headers = ["Content-Type": content.mime, "Content-Length": "\(content.size)"]
let headers = ["Content-Type": content.httpContentType, "Content-Length": "\(content.size)"]
if let response = HTTPURLResponse(url: url, statusCode: 200, httpVersion: "HTTP/1.1", headerFields: headers) {
guard isStartedFor(urlSchemeTask.hash) else { return }
urlSchemeTask.didReceive(response)