v/examples/vweb/vweb_example.v

51 lines
808 B
V

module main
import vweb
const (
port = 8082
)
struct App {
pub mut:
vweb vweb.Context // TODO embed
cnt int
}
fn main() {
println('vweb example')
vweb.run<App>(port)
}
pub fn (mut app App) init_once() {
app.vweb.handle_static('.')
}
pub fn (mut app App) init() {
}
pub fn (mut app App) json_endpoint() vweb.Result {
return app.vweb.json('{"a": 3}')
}
pub fn (mut app App) index() vweb.Result {
app.cnt++
show := true
// app.vweb.text('Hello world from vweb')
hello := 'Hello world from vweb'
numbers := [1, 2, 3]
return $vweb.html()
}
pub fn (mut app App) text() vweb.Result {
return app.vweb.text('Hello world from vweb')
}
pub fn (mut app App) cookie() vweb.Result {
app.vweb.set_cookie({
name: 'cookie'
value: 'test'
})
return app.vweb.text('Headers: $app.vweb.headers')
}