Important: There is controversy about whether to use Iris at all as the author apparently deleted the history multiple times, which makes it hard to use as a stable API. Please read Why you should not use Iris for your Go and form your own opinion
Just use ctx.FormValue(...)
instead of ctx.ParamDecoded()
:
func hi(ctx *iris.Context) {
name := ctx.FormValue("name")
ctx.Writef("Hi %s!", name)
}
If there is no such form value (i.e. query parameter) present, this will just return an empty string.
If you want to test whether a form value is actually present, you can use ctx.FormValues()
to obtain a map. This is a little bit more complex, however, because the map contains a list of string values for each key:
func hi(ctx *iris.Context) {
form := ctx.FormValues()
names, ok := form["name"]
name := ""
if !ok { // No name parameter
name = "<unknown>"
} else { // At least one name
name = names[0]
}
ctx.Writef("Hi %s!", name)
}