cask
0.10.2
object MinimalApplication extends cask. MainRoutes {
@ cask.get( " / " )
def hello () = {
" Hello World! "
}
@ cask.post( " /do-thing " )
def doThing ( request : cask. Request ) = {
request.text().reverse
}
initialize()
}CASK是一個由Python's Flask Project啟發的簡單Scala Web框架。它旨在為Scala Web服務器帶來簡單,靈活性和易用性,避免使用隱秘的DSL或複雜的異步。 CASK可以輕鬆使用Scala設置網站,後端服務器或REST API
如果您使用木桶並喜歡它,您可能會喜歡作者的以下書:
動手Scala在整本書中廣泛使用了scala,並且擁有第14章的全部:簡單的Web和API服務器,專用於庫。動手Scala是提高您在Scala的技能,尤其是cask的好方法。
CASK使用JPOROFILER JAVA PROFILER進行了介紹,由EJ Technologies提供
@postJsonCached ,允許引用@postJson中的原始身體有效載荷#123當以路徑段或查詢參數傳遞時,正確解碼URL參數#114
解決靜態路徑#111時保持領先斜線
添加cask.QueryParams類型以允許路由方法採用任意查詢參數,添加cask.RemainingPathSegments作為subpath = true #108#109#110
org.xerial:sqlite-jdbc庫3.41.2.1 to@staticResources和@staticFiles裝飾器現在根據文件擴展自動推斷內容類型@cask.options裝飾器actorContext明確傳遞到每個路線案例類geny.Writable#httpContentType and geny.Writable#contentLengthdelete和patch添加端點SameSite cookie屬性cask-actor提取到自己的倉庫和文物中,https://github.com/lihaoyi/castorcask-actor分別為單獨的人工製品,單獨記錄為木桶演員現在應用於單個方法的不匹配的裝飾器類型現在是一個編譯錯誤
現在, staticFiles和staticResources允許您指定響應標題
允許cask.decorators.compress press用作cask.Routes或cask.Main 。
允許將裝飾器定義並用於非cask.Response響應結果
cask.WebsocketClientImpl中的崩潰cask.WsClient中提供一個簡單的跨平台內置網絡網絡客戶端Routes#log隱式cask.utilconcurrent.ExecutionContext.global cask.Routes默認情況下,如有必要cask.Logger 。cask.WsHandler和cask.WsActor中的Webocketscask.Response現在是協變量的./mill bootstrap腳本