视图下的文件不能在grails中访问

File under views not accessible in grails

本文关键字:grails 访问 不能 文件 视图      更新时间:2023-09-26

我们需要为我们在Grails应用程序中使用的商业Javascript库使用Javascript许可文件。许可证需要放置在与视图相同的文件夹中,因为它不支持许可证文件的相对路径规范。我们的视图位于grails-app/view/video中。当我们将许可证文件放入文件夹时,我们无法在浏览器中访问它,例如…app-url/视频/license.txt然而,当我们把它放在其他文件夹中,比如:"../assets/library/license.txt",那么我们就可以通过浏览器使用URL app-url/assets/library/license.txt

访问它。

由于JS库不支持相对路径,所以我们无法使用此技术。

是否有办法通过URL访问位于视图文件夹下的文件?或者是否需要任何特定的配置设置来完成此操作?如有任何建议和意见,我们将不胜感激。

谢谢

除非您配置环境并在那里映射静态文件,否则您没有其他选择,然后设置UrlMapping.groovy并从那里提供静态内容。在您的UrlMappings.groovy中添加:

"video/license.txt"(controller: 'view', action: 'license')

view控制器:

def license () {
   def file = new File('/license.txt') // change this!
   response.setContentType("text/plain")
   response.outputStream << file.newInputStream() 
}