HirCoir commited on
Commit
89a9c70
1 Parent(s): 14187b6

Update server.py

Browse files
Files changed (1) hide show
  1. server.py +40 -27
server.py CHANGED
@@ -1,39 +1,52 @@
1
  import os
2
- from flask import Flask, send_from_directory, abort
3
 
4
  app = Flask(__name__)
5
 
6
- # Directorio donde se encuentran los archivos
7
  base_directory = "/home/app/"
8
 
9
- # Obtiene el nombre del modelo de la variable de entorno
10
- model_name = os.getenv('MODELNAME')
11
- if model_name is None:
12
- print("MODELNAME no está definida en las variables de entorno.")
13
- exit(1)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14
 
15
- # Ruta a los archivos basados en model_name
16
- onnx_file = f"{model_name}.onnx"
17
- json_file = f"{model_name}.onnx.json"
18
-
19
- @app.route('/onnx')
20
- def serve_onnx_file():
21
- """Sirve el archivo .onnx."""
22
- file_path = os.path.join(base_directory, onnx_file)
23
- if os.path.exists(file_path):
24
- return send_from_directory(base_directory, onnx_file)
25
- else:
26
- abort(404, description=f"El archivo {onnx_file} no se encuentra.")
27
-
28
- @app.route('/json')
29
- def serve_json_file():
30
- """Sirve el archivo .onnx.json."""
31
- file_path = os.path.join(base_directory, json_file)
32
  if os.path.exists(file_path):
33
- return send_from_directory(base_directory, json_file)
34
  else:
35
- abort(404, description=f"El archivo {json_file} no se encuentra.")
36
 
37
  if __name__ == '__main__':
38
- # Ejecuta el servidor en el puerto 7860
39
  app.run(host='0.0.0.0', port=7860)
 
1
  import os
2
+ from flask import Flask, render_template_string, send_from_directory
3
 
4
  app = Flask(__name__)
5
 
6
+ # Directorio base donde se encuentran los archivos
7
  base_directory = "/home/app/"
8
 
9
+ @app.route('/')
10
+ def index():
11
+ # Lista de archivos en el directorio base
12
+ files = os.listdir(base_directory)
13
+
14
+ # HTML para mostrar los archivos como enlaces
15
+ html = """
16
+ <!DOCTYPE html>
17
+ <html>
18
+ <head>
19
+ <title>Archivos disponibles</title>
20
+ </head>
21
+ <body>
22
+ <h1>Archivos disponibles:</h1>
23
+ <ul>
24
+ """
25
+
26
+ # Agrega un elemento de lista (<li>) con un enlace para cada archivo
27
+ for file_name in files:
28
+ # Agrega un elemento de lista con un enlace
29
+ html += f'<li><a href="/download/{file_name}">{file_name}</a></li>'
30
+
31
+ # Cierra la lista y el documento HTML
32
+ html += """
33
+ </ul>
34
+ </body>
35
+ </html>
36
+ """
37
+
38
+ return render_template_string(html)
39
 
40
+ @app.route('/download/<path:filename>')
41
+ def download_file(filename):
42
+ """Sirve el archivo desde el directorio base."""
43
+ # Verifica si el archivo existe
44
+ file_path = os.path.join(base_directory, filename)
 
 
 
 
 
 
 
 
 
 
 
 
45
  if os.path.exists(file_path):
46
+ return send_from_directory(base_directory, filename, as_attachment=True)
47
  else:
48
+ return "Archivo no encontrado", 404
49
 
50
  if __name__ == '__main__':
51
+ # Ejecuta el servidor en el puerto 7860 y escucha desde todas las interfaces de red.
52
  app.run(host='0.0.0.0', port=7860)