Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.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
Kotlin 使用`RoutingContext::json`方法时,如何设置响应状态代码?_Kotlin_Vert.x - Fatal编程技术网

Kotlin 使用`RoutingContext::json`方法时,如何设置响应状态代码?

Kotlin 使用`RoutingContext::json`方法时,如何设置响应状态代码?,kotlin,vert.x,Kotlin,Vert.x,我有以下代码: get("/signup").handler { // some logic it.response() .setStatusCode(409) .putHeader("content-type", "application/json; charset=utf-8") .end(jsonObjectOf( "error" to "EmailAlre

我有以下代码:

get("/signup").handler {
  // some logic
  it.response()
    .setStatusCode(409)
    .putHeader("content-type", "application/json; charset=utf-8")
    .end(jsonObjectOf(
      "error" to "EmailAlreadyInUse"
    ).toString())
}
为了简化它,我想使用
RoutingContext::json
方法:

get("/signup").handler {
  // some logic
  it
    .setStatusCode(409) // Can't do this, setStatusCode method doesn't exist in RoutingContext
    .json(jsonObjectOf(
      "error" to "EmailAlreadyInUse"
    ))
}
但是,正如您所看到的,当使用
RoutingContext::json
方法时,我无法设置响应的状态代码


有没有办法做到这一点?(无需使用自定义扩展功能)

您可以使用Kotlin
应用
来实现:

it.apply{
响应()。状态代码=409
json(jsonObjectOf(“错误”到“EmailAlreadyInUse”))
}

您可以使用Kotlin
应用
进行以下操作:

it.apply{
响应()。状态代码=409
json(jsonObjectOf(“错误”到“EmailAlreadyInUse”))
}