User Tools

Site Tools


flask

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
flask [2020/04/21 20:52] joseflask [2020/04/21 21:28] (current) jose
Line 28: Line 28:
   python app.py   python app.py
  
-Si lanzamos este comando, ejecuta el comando, en este caso touch+Si lanzamos este comando, ejecuta el comando, en este caso **fichero_touch**
   curl http://127.0.0.1:5000/create   curl http://127.0.0.1:5000/create
  
Line 42: Line 42:
 @app.route('/usuario' , methods = ['POST']) @app.route('/usuario' , methods = ['POST'])
 def get_variables(): def get_variables():
-        user=request.form.get('user'+        fichero=request.form.get('fichero')
-        password=request.form.get('password')+
  
-        command = "touch " + user+        command = "touch " + fichero
  
         try:         try:
Line 59: Line 58:
     app.run()     app.run()
 </code> </code>
 +Levantamos el servidor:
   python3 app_post.py   python3 app_post.py
 +Si ejecutamos este comando, nos crea el fichero que le pasemos en la variable fichero, en este caso fichero_prueba.txt
 +  curl -X POST http://127.0.0.1:5000/usuario -d "fichero=fichero_prueba.txt"
  
-  curl -X POST http://127.0.0.1:5000/usuario -d "user=hola&password=adiios"+====== Coger variables de POST multiple ====== 
 +app_post.py 
 +<code> 
 +from flask import Flask 
 +from flask import request 
 +import subprocess
  
 +app = Flask('flaskshell')
 +
 +@app.route('/usuario' , methods = ['POST'])
 +def get_variables():
 +        user=request.form.get('user')
 +        password=request.form.get('password')
 +
 +        command = 'radtest ' + user + ' ' + password + ' ' + '10.103.0.6 0 testing123-1'
 +        print (command)
 +
 +        try:
 +            result_ls = subprocess.check_output(
 +                [command], shell=True)
 +        except Exception as e:
 +            print (e)
 +            return result_ls
 +
 +        return 'Success'
 +
 +if __name__ == '__main__':
 +    app.run()
 +</code>
 +Levantamos el servidor:
 +  python3 app_post.py
 +Si ejecutamos este comando  hace un login contra servidor radius con user bob y password hello:
 +  curl -X POST http://127.0.0.1:5000/usuario -d "user=bob&password=hello"
 +  
 +====== Configuración ======
 +Escuchar en todas las ips:
 +    app.run(host= '0.0.0.0')
  
flask.1587502343.txt.gz · Last modified: 2020/04/21 20:52 by jose