mirror of
https://github.com/kataras/iris.git
synced 2025-02-03 07:50:34 +01:00
28 lines
737 B
Go
28 lines
737 B
Go
|
// Package main shows how you can use the `WriteWithExpiration`
|
||
|
// based on the "modtime", if it's newer than the request header then
|
||
|
// it will refresh the contents, otherwise will let the client (99.9% the browser)
|
||
|
// to handle the cache mechanism, it's faster than iris.Cache because server-side
|
||
|
// has nothing to do and no need to store the responses in the memory.
|
||
|
package main
|
||
|
|
||
|
import (
|
||
|
"fmt"
|
||
|
"time"
|
||
|
|
||
|
"github.com/kataras/iris"
|
||
|
)
|
||
|
|
||
|
var modtime = time.Now()
|
||
|
|
||
|
func greet(ctx iris.Context) {
|
||
|
ctx.Header("X-Custom", "my custom header")
|
||
|
response := fmt.Sprintf("Hello World! %s", time.Now())
|
||
|
ctx.WriteWithExpiration([]byte(response), modtime)
|
||
|
}
|
||
|
|
||
|
func main() {
|
||
|
app := iris.New()
|
||
|
app.Get("/", greet)
|
||
|
app.Run(iris.Addr(":8080"))
|
||
|
}
|