在 Flask 中读取 Redis 有序集合数据并实现分页请求的示例代码如下:
from flask import Flask, jsonify, request
import redis
app = Flask(__name__)
redis_conn = redis.Redis(host='localhost', port=6379, db=0)
# 模拟初始化有序集合数据
zset_key = 'my_zset'
for i in range(1, 101):
    redis_conn.zadd(zset_key, {f'element{i}': i})
@app.route('/paged_data', methods=['GET'])
def get_paged_data():
    page = int(request.args.get('page', 1))
    page_size = 10
    start_index = (page - 1) * page_size
    end_index = start_index + page_size - 1
    # 读取有序集合中指定范围的元素
    elements = redis_conn.zrange(zset_key, start_index, end_index)
    response = {
        'page': page,
        'page_size': page_size,
        'total_elements': redis_conn.zcard(zset_key),
        'data': [element.decode('utf-8') for element in elements]
    }
    return jsonify(response)
if __name__ == '__main__':
    app.run()
在这个示例中,我们通过 /paged_data 路由实现了一个简单的分页请求接口。用户可以通过 GET 请求访问 /paged_data 并传入 page 参数来指定页数,每页默认包含 10 个元素。接口会读取 Redis 中指定范围的有序集合元素,并返回对应的分页数据信息。