2017-03-02 42 views
0

任何人都可以给我一些材料吗?我已阅读官方文档,但无法理解其语法。例如。我不能掌握以下代码的含义:我不明白akka http路线dsl结构语法

val route = 
    get { 
    pathSingleSlash { 
     complete(HttpEntity(ContentTypes.`text/html(UTF-8)`, "<html><body>Hello world!</body></html>")) 
    } ~ 
     path("ping") { 
     complete("PONG!") 
     } ~ 
     path("crash") { 
     sys.error("BOOM!") 
     } 
    } 
  1. 什么是route类型?
  2. 为什么后跟'{}'块?
  3. akka指令的含义是什么?

回答

1
  1. 路线是其将一个请求转换为未来响应类型。以更正式的方式,它是一个函数RequestContext => Future[RouteResult]

  2. 和3.创建路由后,您需要为其定义一些“逻辑”。这个“逻辑”被放置在“{}”块中。它的名字是路由树。

路由树由指令组成。了解指令是一个可以处理请求的小函数。

一般来说,我建议再次阅读Akka HTTP文档的两章:Routes & Directives