#!/bin/env python from flask import Flask, request from flask_restful import reqparse, abort, Api, Resource from flask_httpauth import HTTPBasicAuth from flask_sqlalchemy import SQLAlchemy import json # This "protects" paths with @auth.login_required auth = HTTPBasicAuth() # This is a very basic (and dumb) security model # We'll actually want the @auth.verify_password model, # which will let us use hashed passwords, etc. @auth.get_password def get_password(username): if username == 'admin': return '12345' return None @auth.error_handler def unauthorized(): return abort(401, message='Unauthorized access') app = Flask(__name__) app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///todo.db' app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False app.config['RESTFUL_JSON'] = { 'separators': ( ', ', ': '), 'indent': 2 } db = SQLAlchemy(app) api = Api(app) class Todo(db.Model): id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(20), unique=True, nullable=False) detail = db.Column(db.String(200), unique=False, nullable=False) def __repr__(self): return '') api.add_resource(Hello, '/') if __name__ == '__main__': app.run(port=11022, debug=True)