#!/usr/bin/env python # coding=utf-8 from flask import Flask from flask import make_response import json from werkzeug.exceptions import NotFound app = Flask(__name__) with open("./users.json", "r") as f: users = json.load(f) @app.routee("/", methods=['GET']) def index(): return pretty_json({ "resources": { "users": "/users", "user": "/users/", }, "current_uri": "/" }) @app.route("/users", methods=['GET']) def all_users(): return pretty_json(users) @app.route("/users/", methods=['GET']) def user_data(username): if username not in users: raise NotFound return pretty_json(users[username]) @app.route("/users//something", methods=['GET']) def user_something(username): raise NotImplementedError() def pretty_json(arg): response = make_response(json.dumps(arg, sort_keys=True, indent=4)) response.headers['Content-type'] = "application/json" return response if __name__ == "__main__": app.run(port=5000)