gpt4 book ai didi

html - Perfect app 中 webroot 的位置(用于 css 文件)

转载 作者:搜寻专家 更新时间:2023-10-31 22:53:49 25 4
gpt4 key购买 nike

我已经克隆了 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

最佳答案

在 Perfect Slack 小组的帮助下,我找到了解决方案。我缺少的部分是 webroot 文件夹。我原以为这是某种别名,但事实证明您确实需要创建一个名为 webroot 的实际文件夹。所以……

  1. 将方案的工作目录设置为$(PROJECT_DIR)
  2. 在元素文件夹中,创建一个名为webroot 的文件夹并将css 文件添加到该文件夹​​。它应该看起来像这样……

enter image description here

我敢肯定所有经验丰富的网络开发人员现在都在 mock 我!

关于html - Perfect app 中 webroot 的位置(用于 css 文件),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53328315/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com