将静态网页添加到 Vapor 服务器

问题描述

我有一个在 Heroku 中运行的 Vapor 服务器 API,支持 iOS 应用程序。我想为我的应用程序创建一个简单的登陆页面,我想将它托管在我现有的 Vapor 服务器中。我怎么能这样做?

解决方法

Vapor 实际上有一个内置的中间件,这使得这很容易。首先,确保您的 Vapor 项目的根目录下有一个 Public 目录。然后,您可以将静态 HTML 页面以及它可能依赖的任何 CSS 和 JS 文件放在那里。

接下来,您只需要将 FileMiddleware 添加到应用程序的中间件 (docs) 中:

let file = FileMiddleware(publicDirectory: app.directory.publicDirectory)
app.middleware.use(file)

现在,您可以将 Public 目录中的任何文件使用其相对目录路径作为应用程序 URL 中的路径。例如,如果您的 static 目录中有一个 Public 目录,并在其中放置了一个 home.html 文件,您可以通过在浏览器中转到 http://localhost:8080/static/home.html 来请求该页面。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...