我正在AngularJS前端构建一个webapp,带有Python Flask后端和MongoDB/GridFS数据库
我想让客户端在浏览器中下载一个文件,就像在直接下载网站上一样。 文件保存在gridFS中
代码如下:
后端路由:
@router.route('/getOrgaUploadedDocument/<doc_id>/<doc_name>', methods=['GET'])
@requires_auth
def getOrgaUploadedDocument(user, doc_id, doc_name):
ret = base_orga.getOrgaUploadedDocument(user, doc_id)
return ret
后端处理(基本组织对象):
def getOrgaUploadedDocument(user, doc_id):
gfile = db_filesystem.get(objectid.ObjectId(doc_id))
return Response(gfile, mimetype=gfile.doc_type, direct_passthrough=True)
前端:
ctrl.downloadDoc = function (doc_id, doc_name) {
$http.get('/getOrgaUploadedDocument/' + doc_id + "/" + doc_name ).then(function(response) {
console.log(response);
});
}
显然,我在控制台中得到了文件的原始字节
但我找不到一种方法来制定请求,以触发浏览器中的文件下载
谢谢
目前没有回答
相关问题 更多 >
编程相关推荐