Advertisement
Guest User

Untitled

a guest
Mar 4th, 2016
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.07 KB | None | 0 0
  1. #! /root/anaconda/bin/python
  2. from flask import Flask,jsonify, request
  3. from models import UsersLoginInfo,Base
  4. from sqlalchemy.ext.declarative import declarative_base
  5. from sqlalchemy.orm import relationship, sessionmaker
  6. from sqlalchemy import create_engine
  7. import sqlalchemy.pool
  8.  
  9. sqlite = sqlalchemy.pool.manage(sqlite3, poolclass=sqlalchemy.pool.SingletonThreadPool)
  10. engine = sqlite.create_engine('sqlite:///userslogininfo.db')
  11.  
  12. Base.metadata.bind = engine
  13. DBSession = sessionmaker(bind=engine)
  14. session = DBSession()
  15. app=Flask(__name__)
  16.  
  17. @app.route('/login',methods=['POST'])
  18. def home():
  19. data_rec = {'username' : request.json['username'], 'password' : request.json['password']}
  20. users = [i.serialize['username'] for i in session.query(UsersLoginInfo).all()]
  21. passwords = [i.serialize['password'] for i in session.query(UsersLoginInfo).all()]
  22. login=False
  23. try:
  24. user_index=users.index(unicode(data_rec['username']))
  25. password_from_db=passwords[user_index]
  26. if password_from_db==data_rec['password']:
  27. login=True
  28. msg=None
  29. else:
  30. msg="Wrong password entered."
  31. except ValueError:
  32. msg="There is no user with that username, please create an account."
  33. return jsonify({'login' : login ,"msg": msg})
  34.  
  35. @app.route('/create',methods=['POST'])
  36. def create():
  37. data_rec = {'username' : request.json['username'], 'password' : request.json['password']}
  38. users = [i.serialize['username'] for i in session.query(UsersLoginInfo).all()]
  39. if data_rec['username'] in users: #check account exists
  40. account_exists=True
  41. msg="An account with that username already exists, please choose another username."
  42. else:
  43. account_exists=False
  44. id=len(users)
  45. user = UsersLoginInfo(username = unicode(data_rec['username']), password = unicode(data_rec['password']), id = id)
  46. session.add(user)
  47. session.commit()
  48. msg="Your account has been created. Please login with it."
  49. return jsonify({'account_exists' : account_exists ,"msg": msg})
  50.  
  51. if __name__ == "__main__":
  52. app.run()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement