示例#1
0
 def POST(self, request_str):
     req_valid, req_type, req_arg = self.parse_request(request_str)
     if req_type == 'POST_CACHE_DATA':
         data = web.data()
         data = json.loads(data) #data holds a list of all the caches, and the metadata about what they sent
         for cache_metadata in data:
             cache_dict = cache_metadata['data']
             full_address = cache_dict['full_address']
             ip = cache_dict['ip_address']
             port = cache_dict['port']
             bytes_uploaded = int(cache_dict['bytes_downloaded'])
             ##
             ftp_server_address = db_manager.get_server()
             ftp_server_ip = ftp_server_address[0].ip
             ftp_server_port = ftp_server_address[0].port
             if((ip != ftp_server_ip)|(port != str(ftp_server_port))):
                 account_name = db_manager.get_account_from_cache(ip, port)
                 account_name = account_name[0].user_name
                 if db_manager.get_account_from_points_table(account_name) == []:
                     #will never get to this condition
                     db_manager.add_account_to_points_table(account_name)
                     db_manager.update_points_for_account(account_name, bytes_uploaded)
                     db_manager.update_bytes_for_cache(account_name, ip, port, bytes_uploaded)
                 else:
                     db_manager.update_points_for_account(account_name, bytes_uploaded)
                     db_manager.update_bytes_for_cache(account_name, ip, port, bytes_uploaded)
         ##
         print data
示例#2
0
 def POST(self):
     data = web.input() #when not setting ('Content-Type', application/json')
     #data = web.data() from urllib2 sending as json
     user_name = data.inputUserName
     password = data.inputPassword
     email_address = data.inputEmail
     if len(db_manager.get_account(user_name)) == 0:
         db_manager.add_account(user_name, password, email_address)
         db_manager.add_account_to_points_table(user_name)
         session.login = True
         session.user_name= user_name
         raise web.seeother('/user_overview')
     else:
         #raise web.seeother('/signup')
         session.login = False
         return "User name already exist! Login or register with another user name!"