123456789101112131415161718192021222324252627282930313233343536373839 |
- import sys
- import requests
- from flask import Flask, jsonify
- from urllib3.exceptions import NewConnectionError
- from drawer.drawer_2d import Drawer2D
- from drawer.drawer_3d import Drawer3D
- app = Flask(__name__)
- @app.route('/sysvent/download/<int:model_id>/<string:draw_type>', methods=['GET'])
- def download_dxf_file(model_id, draw_type,):
- # 指定文件的完整路径
- try:
- drawer = None
- if draw_type == '2d':
- drawer = Drawer2D(model_id)
- elif draw_type == '3d':
- drawer = Drawer3D(model_id)
- path = drawer.export()
- # 使用send_file发送文件,as_attachment=True表示以附件形式发送
- # return send_file(path, as_attachment=True)
- return jsonify({"path": path}), 200
- except NewConnectionError as e:
- # 捕获连接错误,并返回自定义的错误信息
- error_message = "连接失败: 无法连接到服务器。错误信息: " + str(e)
- print(error_message)
- return jsonify({"error": error_message}), 500
- except requests.exceptions.HTTPError as http_err:
- # 捕获其他HTTP错误
- error_message = f"HTTP错误: {http_err}"
- print(error_message)
- return jsonify({"error": error_message}), 500
- if __name__ == '__main__':
- download_dxf_file(1,'3d')
- # app.run(debug=False)
|