Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在Kotlin中启用CORS时,Spark在访问路由时返回空响应_Java_Kotlin_Spark Java - Fatal编程技术网

Java 在Kotlin中启用CORS时,Spark在访问路由时返回空响应

Java 在Kotlin中启用CORS时,Spark在访问路由时返回空响应,java,kotlin,spark-java,Java,Kotlin,Spark Java,这是我的路线图,直接取自: 下面是我如何引用CorsRoute的示例: abstract class Route { init { CorsRoute("*","*","*") } } 以下是我如何开始我的路线: class RestApiRoutes : Route() { fun init() { get("/test") { req, res -> { val obj =

这是我的路线图,直接取自:

下面是我如何引用CorsRoute的示例:

abstract class Route {
    init {
        CorsRoute("*","*","*")
    }
}
以下是我如何开始我的路线:

class RestApiRoutes : Route() {
    fun init() {
        get("/test") {
            req, res -> {
                val obj = JsonObject().addProperty("foo", "bar")
                Gson().toJson(obj).toString()
            }
        }
    }
}
当我前往
http://127.0.0.1:4567/test
我收到:

()->kotlin.String

为什么页面返回这个而不是我期望的JSON响应?

因为

{
    req, res -> {
        val obj = JsonObject().addProperty("foo", "bar")
        Gson().toJson(obj).toString()
    }
}
是一个lambda,它返回一个不带参数的lambda,而不是
字符串。内部lambda的
toString
返回
()->kotlin.String

删除内部
{}
以修复此问题:

{ req, res ->
    val obj = JsonObject().addProperty("foo", "bar")
    Gson().toJson(obj).toString()
}
(请参阅格式约定)

因为

{
    req, res -> {
        val obj = JsonObject().addProperty("foo", "bar")
        Gson().toJson(obj).toString()
    }
}
是一个lambda,它返回一个不带参数的lambda,而不是
字符串。内部lambda的
toString
返回
()->kotlin.String

删除内部
{}
以修复此问题:

{ req, res ->
    val obj = JsonObject().addProperty("foo", "bar")
    Gson().toJson(obj).toString()
}

(请参阅格式约定)

算出了,但忘了回答,我就是这么做的-谢谢你的回复!标记接受未来的观众!我想出来了,但忘了回答,这就是我所做的-谢谢你的回答!标记接受未来的观众!