1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00

vweb: add url query (#5719)

This commit is contained in:
Louis Schmieder 2020-07-07 13:46:57 +02:00 committed by GitHub
parent 4490cd2e8a
commit d2d4ea42ce
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -49,6 +49,7 @@ pub:
// TODO Response
pub mut:
form map[string]string
query map[string]string
headers string // response headers
done bool
page_gen_start i64
@ -330,18 +331,27 @@ fn handle_conn<T>(conn net.Socket, mut app T) {
// Call the right action
println('route matching...')
//t := time.ticks()
mut action := ''
//mut action := ''
mut route_words := []string{}
mut ok := true
url_words := vals[1][1..].split('/')
mut url_words := vals[1][1..].split('/')
if url_words.len == 0 {
app.index()
conn.close() or {}
return
} else {
if url_words.last().contains('?') {
tmp_query := url_words.last().all_after('?').split('&').map(it.split('='))
url_words[url_words.len - 1] = url_words.last().all_before('?')
for data in tmp_query {
if data.len == 2 {
app.vweb.query[data[0]] = data[1]
}
}
}
}
mut vars := []string{cap: route_words.len}
$for method in T {