Hello I am using the Ktor client, but the cookies ...
# ktor
u
Hello I am using the Ktor client, but the cookies are being URL-encoded when making a request. Is there a way to prevent this from happening without using a workaround? Is there a way to prevent cookies from being encoded?
Copy code
val user = client.request {
        url {
            protocol = URLProtocol.HTTPS
            host = "..."
            encodedPath = ""
        }

        header("Cookie", "NID=SDtBsh2qKJrdZ2pWGmlHU+8BA1N3PdeAVKW04EIIAQMdgxyW12BTrTr/aJQ6v4mw; SES=AAABr+Gxx1J6nUK8unsTexz5h21Wk2N4HYGMMi2yHJ+Ec5EgoA/YwxxhPYkF4N001skynFD0XvPrJEM3P6Ocpdgi2UP60p8uohi3JEg3wro0TSo4biBMcrJHUBectnR/xGqfF6XRKa6k020TqmWoAv9WYw0zWQRRwceWnad72VvlwE7wJvZqtnJBEmn3/VuTtKyR2qkTwaH9W15Rj2Es+j6nE8TYSyj8bqz/tQcd9piwfx1yBrU44YmFwxvqI2rH+VDVYVn88rlOvgJIBJL+tU8bf1gMBWsZ+tCwHgNMtWqSMskjyQPkq+FHwcOsuYNC3Gh8dRutdT+TjgD7B485Lo0fCzsKEAHm8uAvshNlBkJ7FRNQwAJYHoIZCluHptjFI/kKtqgKJe/DA29z7gAWCylOZTUsvPWIB2XKLesguanLz0P+ozsKCoKxIJko22i0wwfmEgNrpux4gQee45bqP7QqKEaieF/JRWwMcOrqxa3LanWiB5Zh/7KuLbuxr6dqavmpft2lMEhkqspba6blN29oSrpGXyjjliKEuGRTfB1/q/pluS+t5hbdmg129nNm8O6xMg==")
    }.body<User>()
a
You can use the
renderCookieHeader
function to serialize the cookies while having the
CookieEncoding.RAW
encoding to prevent any encodings. Here is an example:
Copy code
val response = client.get("<https://httpbin.org/get>") {
    header(
        HttpHeaders.Cookie,
        renderCookieHeader(Cookie("NID", "SDtBsh2qKJrdZ2pWGmlHU+8BA1N3PdeAVKW04EIIAQMdgxyW12BTrTr/aJQ6v4mw", encoding = CookieEncoding.RAW))
    )

    header(
        HttpHeaders.Cookie,
        renderCookieHeader(Cookie("SES", "AAABr+Gxx1J6nUK8unsTexz5h21Wk2N4HYGMMi2yHJ+Ec5EgoA/YwxxhPYkF4N001skynFD0XvPrJEM3P6Ocpdgi2UP60p8uohi3JEg3wro0TSo4biBMcrJHUBectnR/xGqfF6XRKa6k020TqmWoAv9WYw0zWQRRwceWnad72VvlwE7wJvZqtnJBEmn3/VuTtKyR2qkTwaH9W15Rj2Es+j6nE8TYSyj8bqz/tQcd9piwfx1yBrU44YmFwxvqI2rH+VDVYVn88rlOvgJIBJL+tU8bf1gMBWsZ+tCwHgNMtWqSMskjyQPkq+FHwcOsuYNC3Gh8dRutdT+TjgD7B485Lo0fCzsKEAHm8uAvshNlBkJ7FRNQwAJYHoIZCluHptjFI/kKtqgKJe/DA29z7gAWCylOZTUsvPWIB2XKLesguanLz0P+ozsKCoKxIJko22i0wwfmEgNrpux4gQee45bqP7QqKEaieF/JRWwMcOrqxa3LanWiB5Zh/7KuLbuxr6dqavmpft2lMEhkqspba6blN29oSrpGXyjjliKEuGRTfB1/q/pluS+t5hbdmg129nNm8O6xMg==", encoding = CookieEncoding.RAW))
    )
}