我想了解如何控制响应何时“缓存”以及何时“重新计算”。
举个例子:
[<EntryPoint>]
let main [| port |] =
let config =
{ defaultConfig with
bindings = [ HttpBinding.mk HTTP IPAddress.Loopback (uint16 port) ]
listenTimeout = TimeSpan.FromMilliseconds 3000.
}
let appDemo:WebPart =
DateTime.Now.ToString()
|> sprintf "Server timestamp: %s"
|> Successful.OK
startWebServer config appDemo
如果我运行上面的网络服务器并多次点击它,那么每次我都会得到相同的时间戳。我想这是有道理的;appDemo
只是一个表达式,它是第一次计算,以后再也不会计算了,对吧?
在这种情况下,我可能希望appDemo
为每个请求“重新计算”。我怎么做?我似乎在文档中找不到示例。