kataras on master
examples: minor (see previous c… (compare)
kataras on master
examples: server-sent events: a… (compare)
kataras on master
minor (compare)
kataras on master
fix https://github.com/kataras/… (compare)
kataras on master
minor (see previous commit) (compare)
kataras on master
minor (see previous commit) (compare)
kataras on master
minor (see previous commit) (compare)
kataras on master
New feature: Context.ReadJSONSt… (compare)
kataras on master
New feature: Fallback views. Re… (compare)
kataras on master
thank you @mattbowen for your k… (compare)
kataras on master
thank you @always-waiting for y… (compare)
kataras on master
README: minor (compare)
kataras on master
Update README_ZH.md Merge pull request #1707 from w… (compare)
kataras on master
udpate modifyProxiedRequest Merge pull request #1710 from t… (compare)
OnRoomJoin
and remove fromOnRoomLeave
. You can find a similar example (collects users per namespace) here. Also can you tell me what was that layerpanel site you posted above?
func (c *Conn) Get(key string) interface{} {
c.storeMutex.RLock()
if c.store != nil {
if v, ok := c.store[key]; ok {
c.storeMutex.RUnlock()
if v == nil {
return nil
}
return v
}
}
c.storeMutex.RUnlock()
return nil
}
func (c *Conn) Get(key string) interface{} {
c.storeMutex.RLock()
defer c.storeMutex.RUnlock()
if c.store == nil {
return nil
}
return c.store[key]
}
defer
is not optimization, it has a performance cost, that's why I am not using it there.
@kataras Although, he does have a point about the comparison of
v
-- if it'snil
you returnnil
? You could have just returned it anyways.
He has a point to be honest, but my eye stucked on that "defer" one. I was thinking to support an error of key found but nil entry (e.g. map["key"] = nil interface) when I designed that conn's Get, but then I decided that was not necessary and the code was like that. I'll re-format it, although, to be realistic it does not cost anything and also the Conn.Set/Get is only for pure neffos users, iris users mostly use the iris.Context.Values().Set/Get to store request values.
Here it's:
func (c *Conn) Get(key string) interface{} {
c.storeMutex.RLock()
if c.store == nil {
c.storeMutex.RUnlock()
return nil
}
v := c.store[key]
c.storeMutex.RUnlock()
return v
}
Hello @Ja7adR,
We have almost 200 examples, there is no a single example of
:param
or*iris.Context
. Please check: https://iris-go.com/docs and https://github.com/kataras/iris/tree/master/_examples/routing.router.Get("/demo/{pid:int}", ProductDemo.Product)
Your handler must accept
iris.Context
NOT*iris.Context
:func Product(ctx iris.Context) { // ... }
thank you
guys i have problem with url params , i use this mode in gin gonic work it without problem but in Iris on get I received Not Found
, this is parameter /validate=:lic
or /validate={lic:string}
or /?validate=:lic
sample 127.0.0.1:8080/validate=123456
code router.Get("/validate/:lic", src.GetLicense)
@kataras Bro I don't have $ money for donate can i get book other edition for gift? i ago time request for Iris book pdf (https://bit.ly/iris-req-book)
Hello @Ja7adR, this is the old link, the new one is: https://www.iris-go.com/#ebookDonateForm but no problem, send me your GitHub username, I am sure we will find a way you can support Iris without $$.
guys i have problem with url params , i use this mode in gin gonic work it without problem but in Iris on get I received
Not Found
, this is parameter/validate=:lic
or/validate={lic:string}
or/?validate=:lic
sample
127.0.0.1:8080/validate=123456
code
router.Get("/validate/:lic", src.GetLicense)
As we've said above, in Iris you do not have :param
or *param
. Use {param:string}
and {param:path}
respectfully. Routing examples: https://github.com/kataras/iris/tree/master/_examples/routing.
@kataras Bro I don't have $ money for donate can i get book other edition for gift? i ago time request for Iris book pdf (https://bit.ly/iris-req-book)
Hello @Ja7adR, this is the old link, the new one is: https://www.iris-go.com/#ebookDonateForm but no problem, send me your GitHub username, I am sure we will find a way you can support Iris without $$.
my github username is @Ja7adR but , I in iris is Beginner