我在Suave中配置了一个简单的HTTP服务器,如下所示。
open System
open Suave
open Suave.Operators
open Suave.Filters
open Suave.Successful
[<EntryPoint>]
let main argv =
let httpPort = 9000
let httpConfig = {
defaultConfig with bindings = [ HttpBinding.createSimple HTTP "0.0.0.0" httpPort ]
}
let httpApp =
choose
[ POST >=> choose
[
path "/login" >=>
request (fun ctx ->
let sessionId = someLoginLogic
)
]
]
startWebServer httpConfig httpApp在这里,我有一个登录端点,它将生成一个随机的会话id,我想在带有HttpOnly和安全标志的cookies中设置该会话id。
发布于 2021-11-26 17:25:26
在Suave中设置cookie的典型方法是通过其cookie状态存储,如文档here所示
statefulForSession
>=> setSessionValue "sessionId" someLoginLogic但是,这并不能为您提供显式设置cookie的secure和httpOnly标志的方法。如果你想这样做,我认为你可以像这样手动完成:
statefulForSession
>=> Suave.Cookie.setCookie (
HttpCookie.create "sessionId" someLoginLogic None None None true true None)https://stackoverflow.com/questions/70126595
复制相似问题