小编tip*_*psy的帖子

在嵌入式Jetty中设置默认字符编码和内容类型

我正在为嵌入式Jetty制作DSL,但在设置characterEncoding和时遇到问题contentType。我希望用户能够为这两个字段指定默认值,但是Jetty使得生活变得艰难。

res.characterEncoding = null给出res.characterEncodingiso-8859-1

res.characterEncoding = "",给出res.characterEncoding"",但res.contentType变为application/json;charset=

res.characterEncoding = ""THEN res.characterEncoding = null的作用与只是做的一样res.characterEncoding = ""

基于这种奇怪的行为,我最终得到了一个荒谬的代码片段:

if (res.characterEncoding.contains(";javalin-default") || res.contentType.contains(";javalin-default")) {
    res.contentType = res.contentType.replace(";javalin-default", "")
    res.characterEncoding = null
    if (res.contentType.contains("application/json")) {
        res.contentType = "application/json"
    } else {
        res.characterEncoding = defaultCharacterEncoding
    }
}
Run Code Online (Sandbox Code Playgroud)

但这不是正确的事情。有任何想法吗?

我在这里有一个问题:https : //github.com/tipsy/javalin/issues/259

java servlets jetty embedded-jetty kotlin

3
推荐指数
1
解决办法
882
查看次数

标签 统计

embedded-jetty ×1

java ×1

jetty ×1

kotlin ×1

servlets ×1