【发布时间】:2018-11-15 21:43:55
【问题描述】:
我已经克隆了 PerfectTemplate 项目并使用它来提供 html,如下所示……
import PerfectHTTP
import PerfectHTTPServer
var routes = Routes()
routes.add(method: .get, uri: "/test") { request, response in
response.addHeader(.contentType, value: "text/html")
response.setBody(string: """
<!DOCTYPE html>
<html lang="en">
<head>
<title>Test!</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<div class="Welcome">Hello</div>
</body>
</html>
""")
response.completed()
}
routes.add(method: .get,
uri: "/**",
handler: StaticFileHandler(documentRoot: "./webroot", allowResponseFilters: true).handleRequest)
try HTTPServer.launch(name: "localhost",
port: 8181,
routes: routes,
responseFilters: [(PerfectHTTPServer.HTTPFilter.contentCompression(data: [:]), HTTPFilterPriority.high)])
我正在使用 Xcode 编译和运行,http://localhost:8181/test 正在按预期返回 html。
问题在于外部 css 文件的位置。据我所知,这应该在一个名为 webroot 的文件夹中,但是在本地运行时该文件夹应该在哪里?
作为参考,我是作为一名 iOS 开发人员来的,所以我对 Web 开发和服务器配置的了解有限。
更新
根据Perfect Slack组的建议,我将css文件添加到项目文件夹(与Package.swift相同的文件夹),并设置方案$(PROJECT_DIR)的工作目录 -但我得到一个 404 试图加载 http://localhost:8181/style.css
【问题讨论】:
标签: html css swift xcode perfect