Advertisement
teslariu

server sin form

May 30th, 2023
928
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.27 KB | None | 0 0
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3.  
  4. from flask import Flask, jsonify, request
  5.  
  6. app = Flask(__name__)
  7. """
  8. alumnos = [
  9.    {'id':1, 'nombre':"Ale", "cursos":3},
  10.    {'id':2, "nombre": "Juana", "cursos":4}
  11. ]
  12. """
  13. alumnos = []
  14.  
  15. @app.route("/")
  16. def home():
  17.     return "<html><h1>En construcción</em></h1></html>"
  18.  
  19.  
  20. @app.route("/alumno", methods=['GET','POST','PUT','DELETE'])
  21. def alumno():
  22.     if request.method == "GET":
  23.         return jsonify({'alumnos':alumnos})
  24.        
  25.     if request.method == "POST":
  26.         if not alumnos:
  27.             codigo = 1
  28.         else:
  29.             codigo = alumnos[-1]['id'] + 1
  30.         alumno = {
  31.                 'id': codigo,
  32.                 'nombre': request.json['nombre'],
  33.                 'cursos': request.json['cursos']
  34.         }
  35.         alumnos.append(alumno)
  36.         return jsonify("Alumno añadido")
  37.        
  38.     if request.method == "PUT":
  39.         codigo = request.json['id']
  40.         for alumno in alumnos:
  41.             if alumno.get('id') == codigo:
  42.                 if request.json['nombre'] is not None:
  43.                     alumno['nombre'] = request.json['nombre']
  44.                 if request.json['cursos'] is not None:
  45.                     alumno['cursos'] = request.json['cursos']
  46.                 return jsonify("Datos modificados")
  47.         return jsonify(f"No se halló al alumno con id {codigo}")
  48.    
  49.    
  50.     if request.method == "DELETE":
  51.         codigo = request.json['id']
  52.         for alumno in alumnos:
  53.             if alumno.get('id') == codigo:
  54.                 alumnos.remove(alumno)
  55.                 return jsonify("Alumno eliminado")
  56.         return jsonify(f"No se halló al alumno con id {codigo}")
  57.  
  58. @app.route("/alumno/<int:i>")
  59. def get_alumno(i):
  60.     try:
  61.         return jsonify({"alumno":alumnos[i-1]})
  62.     except IndexError:
  63.         return jsonify(f"No se halló al alumno con id {i}")
  64.        
  65.  
  66.    
  67. @app.route("/instructor")
  68. def instructor():
  69.     return "<html><h1>Muy pronto....</em></h1></html>"
  70.    
  71. @app.route("/administrador")
  72. def admin():
  73.     return "<html><h1>Hola <em>mundo</em></h1></html>"
  74.    
  75.    
  76. if __name__ == "__main__":
  77.     app.run(debug=True)
  78.    
  79. # Linux
  80. # export FLASK_APP=webserver.py
  81. # flask run
  82.  
  83. # Windows
  84. # set FLASK_APP=webserver.py
  85. # flask run
  86.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement