Cache
GoCondor uses Redis
for cache and its disabled by default, you can enable it in the file config/cache.go
by setting the attribute EnableCache
to true
, then add Redis connection information
to the .env
if you are using it. otherwise, you can use an external tool to inject these variables into the environment
Here is a sample of the Redis connection information in the
.env` file:
#######################################
###### CACHE ######
#######################################
CACHE_DRIVER=redis
REDIS_HOST=localhost
REDIS_PORT=6379
REDIS_PASSWORD=
REDIS_DB=0
Set values in the cache
package handlers
import (
"github.com/gocondor/core"
)
func Login(c *core.Context) *core.Response {
err := c.GetCache().Set("userID", 12345)
}
Set values in the cache with an expiration date
package handlers
import (
"github.com/gocondor/core"
)
func Login(c *core.Context) *core.Response {
hours24 := time.Duration(time.Hour * 24) // 24 hours duration
afterHours24: time.Now().Add(hours24) // the date after 24 hours from now
err := c.GetCache().SetWithExpiration("userID", 12345, afterHours24) // expires after 24 hours
}
Get values from cache
Here is how you can get values from cache
package handlers
import (
"github.com/gocondor/core"
)
func Login(c *core.Context) *core.Response {
userID, err := c.GetCache().Get("userID")
}
Cache Delete
Here is how you can delete something from the cache
package handlers
import (
"github.com/gocondor/core"
)
func Login(c *core.Context) *core.Response {
err := c.GetCache().Delete("userID")
}