gpt4 book ai didi

f# - 保留提供静态文件

转载 作者:行者123 更新时间:2023-12-04 03:50:09 25 4
gpt4 key购买 nike

我想使用suave服务“公用”文件夹中的所有文件

在我的公众内部,我有:

/index.html
/styles/main.css
/scripts/app.js
/images/*.(png|jpg)


我是否使用homeFolder?或如何运作?公用文件夹是否需要复制到bin文件夹中可执行文件的旁边?
一个代码片段将不胜感激。谢谢。

编辑:

解决方案如下所示:

open Suave
open Suave.Filters
open Suave.Operators
open Suave.Successful
open System.IO

let app =
choose [
GET >=> choose
[path "/" >=> OK "test" ; Files.browseHome]
POST >=> choose
[path "/foo" >=> OK "thanks"]
]

let myHomeFolder = Path.Combine(Directory.GetCurrentDirectory(), "public")

let cfg = {
defaultConfig with
homeFolder = Some(myHomeFolder)
}

[<EntryPoint>]
let main argv =
printfn "%A" argv
startWebServer cfg app
System.Console.ReadLine() |> ignore
0 // return an integer exit code

最佳答案

我发现很难做到这一点,因为它并没有真正记录在案。我没有在上面找到Carsten链接到的博客,因此在浏览Suave源代码及其GitHub存储库中的示例后,我设法找到了这个博客:

open Suave
open Suave.Operators

let app =
choose
[ Filters.GET >=> choose

[ Filters.path "/" >=> (
"My main page"
|> Successful.OK)

Files.browseHome ] ] // <-- The important part

[<EntryPoint>]
let main x =
Web.startWebServer Web.defaultConfig app |> ignore
0


我使用 browseHome是因为这是一个控制台应用程序,我只想提供exe目录中的文件。我想您会想使用 browsesource code

here are some examples您可能会发现有用。

关于f# - 保留提供静态文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35046815/

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