Scala Play 2.5控制器类服务于静态HTML



我想从Scala Play控制器中提供静态文件。我正在寻找可以让我做类似此示例的事情。

注意:这显然不起作用。我很可能以错误的方式看待问题,但是我不想重定向到app.html

def loadApplication(): EssentialAction = Action.sync { request =>
  val contents = Assets.contentsOf("/public/assets/app.html") //This doesnot return the contents, but that is what I want
  Ok(contents)
}

您可以使用Assets并通过该返回内容。不过,您可能必须调整路径:

class MyController @Inject() (assets: Assets) extends Controller {
  def loadApplication(): Action[AnyContent] = Action.async { request =>
    assets.at("/public/assets/", "app.html").apply(request)
  }
}

可以在文档中找到更多信息:https://www.playframework.com/documentation/2.5.x/assetsoverview#the-assets-controller

获取/资产/*文件controllers.assets.at(路径="/public",file)

最新更新