2014-09-04 33 views
0

我使用Scala和Lift的REST網絡服務,我有一個方法可以生成動態jpg圖像,應該通過獲取請求訪問,以便每個Get-Request該方法再次生成一個圖像並將其發送迴響應。斯卡拉昇降機 - 休息 - 獲取動態生成的圖像

我在做服務的情況下:

case "img.jpg" :: Nil Get _ => Full(OkResponse()) 
case _ => Full(NotFoundResponse()) 

但這種情況似乎並不被認可,它總是捕捉默認情況下。

什麼是服務路線的正確方法。網址?什麼樣的響應類型可以用來傳遞jpg?

回答

0

文件擴展名與路徑的其餘部分分開處理,所以與上述操作相匹配將不起作用。您可以在Lift Cookbook中看到更多關於此的討論。

爲了使上述工作,你應該能夠做到這一點:

case "img" :: Nil Get req if req.path.suffix == "jpg" => Full(OkResponse()) 

我相信你也可以使用Req對象,這將讓您指定這樣的後綴:

case Req("img" :: Nil, "jpg", GetRequest) => Full(OkResponse())