-
-
Notifications
You must be signed in to change notification settings - Fork 5
/
container.ts
36 lines (32 loc) · 998 Bytes
/
container.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import application from "../server/mod.ts";
import { HttpRequest, HttpResponse } from "../server/types.ts";
const app = application();
type MyData = {
key: string;
value: string;
status: boolean;
};
// set data from container
app.set("key1", "value1")
// set data with custom type
.set<MyData>("myData", { key: "myData", value: "ok", status: true })
// set data with expired time
.set("expired", "the expired data", { isExpired: true, expirySeconds: 5 })
.get("/", (req: HttpRequest, res: HttpResponse) => {
// you can also set data from handler
req.set("new", "data from handler");
return res.json({
// access data from handler
val: req.get("key1"),
expired: req.get("expired"),
});
})
.get("/my-data", (req: HttpRequest, res: HttpResponse) => {
return res.json({
new: req.get("new"),
// get data with custom type
myData: req.get<MyData>("myData"),
expired: req.get("expired"),
});
});
await app.serve();