Python Flask Pymongo异常管理
我有一个烧瓶路线定义如下:Python Flask Pymongo异常管理,python,flask,pymongo,Python,Flask,Pymongo,我有一个烧瓶路线定义如下: @app.route('/api/v0.1/getTopPosts', methods = ['POST']) @auth.login_required def get_top_posts(): if not request.json or not 'page' in request.json: abort(400) resultsPerQuery = 10 page = int(request.json['page']) skip = (
@app.route('/api/v0.1/getTopPosts', methods = ['POST'])
@auth.login_required
def get_top_posts():
if not request.json or not 'page' in request.json:
abort(400)
resultsPerQuery = 10
page = int(request.json['page'])
skip = ( page - 1) * resultsPerQuery;
postsToReturn = []
errorDidOccur = False
#get top posts
try:
topPostsReturn = db.collection.find({"isActive":"yes","state":{ "$BAD" : False }}).sort('rank',1).limit(resultsPerQuery).skip(skip)
for topPost in topPostsReturn:
postsToReturn.append(db.collection.find_one({'_id':topPost['posts_id']}).copy())
except pymongo.errors.OperationFailure as e:
errorDidOccur = True
if errorDidOccur:
reply = {
'reply' : 'failure',
'error' : e,
'data' : None
}
else:
reply = {
'reply' : 'success',
'error' : None,
'data' : postsToReturn
}
return dumps(reply)
我插入$BAD以生成操作失败异常。我的问题是“e”不是JSON可序列化的。我得到:
TypeError: OperationFailure(u'database error: invalid operator: $BAD',) is not JSON serializable
我该如何报告错误
谢谢使用
'error' : e.message,
而不是
'error' : e,