mkdir app
cd app
app.py
from flask import Flask, jsonify, request
app = Flask(__name__)
@app.route("/")
def index():
return "Hello World!"
@app.route('/add')
def add():
num1 = int(request.args.get('num1'));
num2 = int(request.args.get('num2'));
return f"{num1} + {num2} = {num1 + num2}"
#if __name__ == "__main__":
#app.run(debug=True);
#app.run(host="0.0.0.0", port=int("1234"), debug=True)
runtime.txt
python-3.10.8
Procfile
web: gunicorn app:app
requirements.txt
click==8.0.3
colorama==0.4.4
Flask==2.0.2
Flask-Cors==3.0.10
gunicorn==20.1.0
itsdangerous==2.0.1
Jinja2==3.0.3
MarkupSafe==2.0.1
PyMySQL==1.0.2
six==1.16.0
Werkzeug==2.0.2
OR
You can output all dependencies using following command
python -m pip freeze > requirements.txt
heroku login
#onetime
heroku create <appname>
heroku git:remote -a <appname>
git init
#repeat whenever you make changes
git add .
git commit -m 'heroku push'
git push heroku master
Test API
https://myflaskapp2022.herokuapp.com/
https://myflaskapp2022.herokuapp.com/add?num1=5&num2=9
Troubleshoot
heroku logs --tail --app eflask-app-dusra
If still it is not working please do check spellings of files