Kitura-Session 存储,使用 Redis 作为后端存储
使用 Redis 作为后端存储的 Kitura-Session 存储。
最新版本的 Kitura-Session-Redis 需要 Swift 4.0 或更新版本。您可以按照此 链接 下载此版本的 Swift 二进制文件。不保证与其他 Swift 版本的兼容性。
为了使用 Redis 作为会话存储,请创建一个 RedisStore
的实例,并将其传递给 Session
构造函数。
import KituraSession
import KituraSessionRedis
let redisStore = RedisStore(redisHost: host, redisPort: port, redisPassword: password)
let session = Session(secret: <secret>, store: redisStore)
RedisStore
构造函数需要 Redis 服务器主机和端口。其余参数是可选的。
init (redisHost: String, redisPort: Int32, redisPassword: String?=nil, ttl: Int = 3600, db: Int = 0, keyPrefix: String = "s:")
您可以在 redis.conf
文件中设置 Redis 密码。
requirepass <your password>
数据库的最大数量也在 redis.conf
文件中设置。
databases <number of databases>
传递给构造函数的 db
必须介于 0 和此数字减 1 之间。
要运行 Kitura-Session-Redis
的 swift 测试,您必须首先设置 Redis。从 Kitura-Session-Redis 目录中,运行以下命令:
brew install redis --build-from-source || brew outdated redis || brew upgrade redis
export REDIS_CONF_FILE=/usr/local/etc/redis.conf
password=$(head -n 1 “/Tests/KituraSessionRedisTests/password.txt")
sudo perl -pi -e "s/# requirepass foobared/requirepass ${password}/g" $REDIS_CONF_FILE
redis-server $REDIS_CONF_FILE
sudo apt-get update -y
sudo apt-get install -y redis-server
export REDIS_CONF_FILE=/etc/redis/redis.conf
sudo chmod go+x /etc/redis/
sudo chmod go+r $REDIS_CONF_FILE
password=$(head -n 1 “/Tests/KituraSessionRedisTests/password.txt")
sudo perl -pi -e "s/# requirepass foobared/requirepass ${password}/g" $REDIS_CONF_FILE
sudo service redis-server restart
然后运行 swift test
。
该库在 Apache 2.0 许可下发布。完整许可文本可在 LICENSE 中找到。