树洞小程序中用户浏览模块实现代码
时间: 2024-01-21 21:16:52 浏览: 131
以下是一个简单的用户浏览模块实现代码,使用Python Flask框架和MongoDB数据库:
```python
from flask import Flask, jsonify, request
from pymongo import MongoClient
app = Flask(__name__)
client = MongoClient('mongodb://localhost:27017/')
db = client['treehole']
# 浏览记录集合
browsing_history = db['browsing_history']
# 添加浏览记录
@app.route('/add_browsing_history', methods=['POST'])
def add_browsing_history():
user_id = request.json['user_id']
post_id = request.json['post_id']
browsing_history.insert_one({'user_id': user_id, 'post_id': post_id})
return jsonify({'success': True})
# 获取用户浏览记录
@app.route('/get_browsing_history/<user_id>', methods=['GET'])
def get_browsing_history(user_id):
browsing_records = browsing_history.find({'user_id': user_id})
browsing_list = []
for record in browsing_records:
browsing_list.append(record['post_id'])
return jsonify({'browsing_history': browsing_list})
if __name__ == '__main__':
app.run(debug=True)
```
在这个代码中,我们首先导入了Flask和pymongo库,并且创建了一个Flask应用程序和一个MongoDB客户端。然后我们指定了要使用的数据库(这里是treehole)和一个浏览记录的集合(browsing_history)。
在接下来的代码中,我们实现了两个路由:
- `/add_browsing_history`:这个路由用于添加一条浏览记录到数据库中。在POST请求中,我们从请求中获取用户ID和帖子ID,并且将这些信息插入到browsing_history集合中。
- `/get_browsing_history/<user_id>`:这个路由用于获取指定用户的浏览记录列表。在GET请求中,我们从URL中获取用户ID,并且查询browsing_history集合中所有该用户的浏览记录。然后我们将这些浏览记录的帖子ID放入一个列表中,并且将这个列表作为JSON响应返回。
这个代码只是一个简单的实现,可以根据具体的需求进行扩展和优化。
阅读全文