Advertisement
Guest User

Untitled

a guest
Apr 19th, 2017
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.61 KB | None | 0 0
  1. import json
  2. from flask import Flask, abort, request
  3. from flask_restplus import Resource, Api
  4. from flask_restplus import fields
  5.  
  6. from users_commands import get_all_users, add_user, remove_user
  7.  
  8. app = Flask(__name__)
  9. api = Api(app,version='1.0', title='API for users management', description='A demonstration of a Flask RestPlus powered API')
  10.  
  11. os_user = api.model('User', {
  12. 'username': fields.String(required=True, description='username to be created', example='operativos'),
  13. 'password': fields.String(required=True, description='password for the username', example='mysecurepass'),
  14. })
  15.  
  16. ns = api.namespace('v1.0/users', description='Operations related to create users')
  17.  
  18. @ns.route('/')
  19. class UserCollection(Resource):
  20. @api.response(200, 'List of users successfully returned.')
  21. def get(self):
  22. """ returns a list of users """
  23. list = {}
  24. list["users"] = get_all_users()
  25. return json.dumps(list), 200
  26.  
  27. @api.response(201, 'User successfully created.')
  28. @api.response(400, 'User already exist.')
  29. @api.expect(os_user)
  30. def post(self):
  31. """ creates a user """
  32. content = request.get_json(silent=True)
  33. username = content['username']
  34. password = content['password']
  35. if not username or not password:
  36. return "empty username or password", 400
  37. if username in get_all_users():
  38. return "user already exist", 400
  39. if add_user(username,password):
  40. return "user created", 201
  41. else:
  42. return "error while creating user", 400
  43.  
  44. if __name__ == "__main__":
  45. app.run(host='0.0.0.0',port=8080,debug='True')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement