在玩 akka-http 实验性 1.0-M2 时,我正在尝试创建一个简单的 Hello world 示例。
import akka.actor.ActorSystem
import akka.http.Http
import akka.http.model.HttpResponse
import akka.http.server.Route
import akka.stream.FlowMaterializer
import akka.http.server.Directives._
object Server extends App {
val host = "127.0.0.1"
val port = "8080"
implicit val system = ActorSystem("my-testing-system")
implicit val fm = FlowMaterializer()
val serverBinding = Http(system).bind(interface = host, port = port)
serverBinding.connections.foreach { connection ⇒
println("Accepted new connection from: " + connection.remoteAddress)
connection handleWith Route.handlerFlow {
path("") {
get {
complete(HttpResponse(entity = "Hello world?"))
}
}
}
}
}
编译失败could not find implicit value for parameter setup: akka.http.server.RoutingSetup
另外,如果我改变
complete(HttpResponse(entity = "Hello world?"))
和
complete("Hello world?")
我得到另一个错误:type mismatch; found : String("Hello world?") required: akka.http.marshalling.ToResponseMarshallable