python - redis, python 和一个存储信息

标签 python redis webserver

所以我正在开发一个基于 Flask 的简单网络服务器,它存储并稍后显示我通过邮寄电话收到的一些信息。

无论如何,我收到的信息是这样存储的:

@app.route('client/<client_id>/', methods=['POST'])
def status(client_id):

    r_server=redis.Redis("127.0.0.1")

    jsonobj=request.data
    data=json.loads(jsonobj)

    result = {
        'client_id': client_id
        'current test': data[0]
        'status': data[1]
    }

    return

现在我想要的是将其保存到 redis 中,同时将 client_id 当前测试和状态链接在一起。

有没有一种简单的方法可以将它存储在 redis 中并稍后接收它,我可以使用 client_id 查看操作?

问候

最佳答案

如果特定 client_id 的信息是可覆盖的,您可以使用 Redis 哈希 (http://redis.io/commands/hmset)。示例:

>>> r=redis.Redis('')
>>> r.hmset('ClientID:127.0.0.1', {'test':'1', 'status':'success'})
True
>>> r.hmget('ClientID:127.0.0.1',['test','status'])
['1', 'success']

如果必须附加记录,您可以将每条记录转储为字符串,并保存在 Redis 列表中。示例:

>>> r.rpush('ClientID:127.0.0.1', json.dumps({'test':'1', 'status':'success'}))
1L
>>> r.rpush('ClientID:127.0.0.1', json.dumps({'test':'2', 'status':'failure'}))
2L
>>> [json.loads(x) for x in r.lrange('ClientID:127.0.0.1', 0, -1)]
[{u'test': u'1', u'status': u'success'}, {u'test': u'2', u'status': u'failure'}]

关于python - redis, python 和一个存储信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23422992/

相关文章:

python - 微分一个方程

redis - 将两个 Redis 实例组合成一个具有两个数据库的实例

web-services - 无法在 Tomcat Web 服务器(本地)上运行我的 Spring MVC 项目

python - docker 无法从文件连接到 redis

python - 从单词表中查找字符串和子字符串

Redis 不会自动重写 appendonly 文件

tomcat - 多个 Https Tomcat 连接器,一个需要客户端身份验证,一个不需要

browser - 压力/负载测试 Ajax 重型 Web 应用程序

python - 为更新的 exe 创建一个下载栏

ruby-on-rails - GitLab CI - Redis::CannotConnectError:在 127.0.0.1:6379 上连接到 Redis 时出错