User Tools

Site Tools


flask

Differences

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

Link to this comparison view

Next revision
Previous revision
flask [2020/04/21 20:29] – created joseflask [2020/04/21 21:28] (current) jose
Line 1: Line 1:
 +====== Ejecutar solo un comando ======
 app.py app.py
 <code> <code>
Line 27: 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
 +
 +====== Coger variables de POST ======
 +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():
 +        fichero=request.form.get('fichero')
 +
 +        command = "touch " + fichero
 +
 +        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, 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"
 +
 +====== 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.1587500989.txt.gz · Last modified: 2020/04/21 20:29 by jose