vex
1.0.0
module main
import nedpals.vex.router
import nedpals.vex.server
import nedpals.vex.ctx
fn print_req_info ( mut req ctx.Req, mut res ctx.Resp) {
println ( ' ${req.method} ${req.path} ' )
}
fn do_stuff ( mut req ctx.Req, mut res ctx.Resp) {
println ( 'incoming request!' )
}
fn main () {
mut app := router. new ()
app. use (do_stuff, print_req_info)
app. route (.get, '/' , fn (req & ctx.Req, mut res ctx.Resp) {
res. send_file ( 'index.html' , 200 )
})
app. route (.get, '/public/*path' , fn (req & ctx.Req, mut res ctx.Resp) {
res. send_file ( 'public/' + req.params[ 'path' ], 200 )
})
app. route (.get, '/path/:name' , fn (req & ctx.Req, mut res ctx.Resp) {
println ( 'path is ${req.params["name"]} ' )
}, fn (req & ctx.Req, mut res ctx.Resp) {
res. send ( 'path: ' + req.params[ 'name' ], 200 )
})
app. route (.get, '/complex/:name/*path' , fn (req & ctx.Req, mut res ctx.Resp) {
res. send ( 'username: ' + req.params[ 'name' ] + ' n path: ' + req.params[ 'path' ], 200 )
})
server. serve (app, 6789 )
}
Узнайте, как настроить и использовать VEX, прочитав Wiki.
GET
, POST
, PUT
, PATCH
, DELETE
и OPTION
. application/x-www-form-urlencoded
application/json
multipart/form-data
git checkout -b my-new-feature
)git commit -am 'Add some feature'
)git push origin my-new-feature
) Примеры можно найти в каталоге /examples
.
Массачусетский технологический институт