requests_cache:使用REDIS_URL进行连接

时间:2017-10-11 16:47:25

标签: heroku redis

我正在尝试使用requests_cache缓存我的请求,redis就像这样:

requests_cache.install_cache(
    'requests_cache', backend='redis', expire_after=600
)

当Redis在localhost:6379上运行时,一切都很好,开箱即用。

但是,当我将我的应用程序部署到Heroku,其中存在REDIS_URL环境变量时,上述命令失败,因为显而易见的REDIS_URL未指向localhost

Error 111 connecting to localhost:6379. Connection refused.

所以问题是,如何让它在Heroku上运行?文件对这个问题并不清楚。

1 个答案:

答案 0 :(得分:1)

您必须将另一个参数传递给名为install_cache的{​​{1}},该connection类型为StrictRedis。所以我想这样创造:

r = redis.StrictRedis(host='REDIS_URL', port=6379, db=0)
requests_cache.install_cache(
    'requests_cache', backend='redis', expire_after=600, connection=r
)

或类似的东西,取决于REDIS_URL包含的信息量(协议,端口等)