如何在Akka Http中发送响应代码作为响应?

时间:2017-01-12 10:54:04

标签: scala akka akka-http

我有以下代码:

val route:Route={
    path("hello"){
      get{
        complete{
          "done"
        }
      }
    }
  }

  Http().bindAndHandle(route, "localhost", 8187)

这里完整回复字符串"完成"。但是,我希望它返回200的状态代码。我该怎么做?

2 个答案:

答案 0 :(得分:10)

正如评论中所解释的那样,默认响应代码为200,因此您可以获得所需的内容。通常,complete上的the documentation演示了如何使用任何状态代码编写complete

complete(StatusCodes.OK)

complete(StatusCodes.Create -> "message")

complete(201 -> "another message")

答案 1 :(得分:4)

您可以使用HttpResponse类

 import akka.http.scaladsl.model._

 complete{
    HttpResponse(StatusCodes.OK, entity = "Result ok")
   //HttpResponse(StatusCodes.InternalServerError, entity = "Error") 
  }