-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathapplication.py
More file actions
30 lines (20 loc) · 746 Bytes
/
application.py
File metadata and controls
30 lines (20 loc) · 746 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import requests
from flask import Flask, jsonify, render_template, request
app = Flask(__name__)
@app.route("/")
def index():
return render_template("index.html")
@app.route("/convert", methods=["POST"])
def convert():
# Query for currency exchange rate
currency = request.form.get("currency")
res = requests.get("https://api.fixer.io/latest", params={
"base": "USD", "symbols": currency})
# Make sure request succeeded
if res.status_code != 200:
return jsonify({"success": False})
# Make sure currency is in response
data = res.json()
if currency not in data["rates"]:
return jsonify({"success": False})
return jsonify({"success": True, "rate": data["rates"][currency]})