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

How to send a response code as a response in Akka Http?

我有以下代码:

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

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

这里完整的响应字符串 "done"。但是,我希望它 return 状态代码为 200。我该怎么做?

如评论中所述,默认响应代码为 200,因此您得到的正是您想要的。一般来说,complete 上的 the documentation 演示了如何使用任何状态代码编写 complete

complete(StatusCodes.OK)

complete(StatusCodes.Create -> "message")

complete(201 -> "another message")

您可以使用 HttpResponse class

 import akka.http.scaladsl.model._

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