Exemplo n.º 1
0
 def post(self):
     # get the post data
     post_data = request.get_json()
     # check if user already exists
     user = User.query.filter_by(email=post_data.get('email')).first()
     if not user:
         try:
             user = User(email=post_data.get('email'),
                         name=post_data.get('name'),
                         password=post_data.get('password'),
                         admin=post_data.get('admin'))
             # insert the user
             db.session.add(user)
             db.session.commit()
             # generate the auth token
             auth_token = user.encode_auth_token(user.id)
             responseObject = {'status': 'success', 'data': user._asdict()}
             return make_response(json.dumps(responseObject,
                                             default=str)), 200
         except Exception as e:
             print(e)
             responseObject = {
                 'status': 'fail',
                 'message': 'Some error occurred. Please try again.'
             }
             return make_response(json.dumps(responseObject,
                                             default=str)), 401
     else:
         responseObject = {
             'status': 'fail',
             'message': 'User already exists. Please Log in.',
         }
         return make_response(json.dumps(responseObject, default=str)), 202
Exemplo n.º 2
0
    def test_decode_auth_token(self):
        user = User(email='*****@*****.**', password='******')
        db.session.add(user)
        db.session.commit()
        auth_token = user.encode_auth_token(user.id)
        self.assertTrue(isinstance(auth_token, bytes))

        self.assertTrue(
            User.decode_auth_token(auth_token.decode("utf-8")) == 1)