You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
1.2 KiB
44 lines
1.2 KiB
from flask import Flask, jsonify
|
|
import random
|
|
|
|
#vytvoření instance (pro nás aplikace/objekt) pro Flask
|
|
app = Flask(__name__)
|
|
|
|
#hlavní stránka pro info
|
|
@app.route("/")
|
|
def index():
|
|
return """
|
|
<h1>Flask Api server</h1>
|
|
<p>Odkaz <a href='/api/random'> /api/random </a></p>
|
|
<p>Odkaz <a href='/api/pozdrav'> /api/pozdrav (SVĚT) </a></p>
|
|
<p>Odkaz <a href='/api/pozdrav/pavel'> /api/pozdrav/pavel</a></p>
|
|
"""
|
|
|
|
#API Endpoint - budeme vracet náhodné hodnoty
|
|
@app.route("/api/random")
|
|
def get_rng():
|
|
cislo = round(random.uniform(1.0,1000.0),2)
|
|
rasa = random.choice(["člověk","elf","trpaslík","obr"])
|
|
return jsonify({"rng":cislo,"rasa":rasa})
|
|
|
|
#Dynamický Endpoint - budeme zdravit člověka z URL
|
|
@app.route("/api/pozdrav/<string:jmeno>")
|
|
def pozdrav(jmeno):
|
|
return f"Ahoj {jmeno}!"
|
|
|
|
@app.route("/api/pozdrav/")
|
|
def pozdrav_svet():
|
|
return f"Hello World!"
|
|
|
|
@app.route("/api/mocnina/<int:zaklad>/<int:exponent>")
|
|
def mocnina(zaklad,exponent):
|
|
vysledek = zaklad ** exponent
|
|
return jsonify ({
|
|
"operace":"mocnina",
|
|
"zaklad":zaklad,
|
|
"exponent":exponent,
|
|
"vysledek":vysledek
|
|
})
|
|
|
|
if __name__ == "__main__":
|
|
app.run(host="0.0.0.0",port=80,debug=True)
|
|
|