Skip to content

ryicoh/tikvstore

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

tikvstore

Go

A session store backend for gorilla/sessions - src.

Installation

go get github.com/ryicoh/tikvstore

Documentation

See http://www.gorillatoolkit.org/pkg/sessions for full documentation on underlying interface.

Example

package main

import (
	"github.com/ryicoh/tikvstore"
)
func main() {
	ctx := context.TODO()
	cli, err := rawkv.NewClient(ctx, []string{endpoint}, config.DefaultConfig().Security)
	if err != nil {
		panic(err)
	}
	defer cli.Close()

	// Fetch new store.
	store, err := tikvstore.NewTiKVStore(client, []byte("secret-key"))
	if err != nil {
		panic(err)
	}

	// Get a session.
	session, err = store.Get(req, "session-key")
	if err != nil {
		log.Error(err.Error())
	}

	// Add a value.
	session.Values["foo"] = "bar"

	// Save.
	if err = sessions.Save(req, rsp); err != nil {
		t.Fatalf("Error saving session: %v", err)
	}

	// Delete session.
	session.Options.MaxAge = -1
	if err = sessions.Save(req, rsp); err != nil {
		t.Fatalf("Error saving session: %v", err)
	}

	// Change session storage configuration for MaxAge = 10 days.
	store.SetMaxAge(10 * 24 * 3600)
}

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages