我正在创建一个SSE简单示例,我使用Scalatra创建一个API,并使用标题text/event-stream
按间隔获取响应。看起来Scalatra不支持这种类型。
这是我的简单代码,
get("/hello") {
val headers = Map(
"Cache-Control" -> "no-cache",
"Content-Type" -> "text/event-stream",
"Connection" -> "close")
Ok("data: hello world", headers)
}
但是我只从服务器收到消息。我想做类似akka-http
get {
complete {
Source.tick(2.seconds, 2.seconds, ())
.map(_ => LocalTime.now())
.map(dateTimeToServerSentEvent)
.via(WithHeartbeats(1.second))
}
}
你们知道如何从Scalatra获得事件流吗? 谢谢。