2017-03-02 57 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