def get_token(): user_agent = request.headers.get('User-Agent', "") device_sn = request.headers.get('device_sn', "") os_platform = request.headers.get('os_platform', "") app_version = request.headers.get('app_version', "") data = request.get_json() sign = data.get('sign', "") expected_sign = utils.get_sign(user_agent, device_sn, os_platform, app_version) if expected_sign != sign: result = { 'success': False, 'msg': "Authorization failed!" } response = make_response(json.dumps(result), 403) else: token = utils.gen_random_string(16) token_dict[device_sn] = token result = { 'success': True, 'token': token } response = make_response(json.dumps(result)) response.headers["Content-Type"] = "application/json" return response
def get_authenticated_headers(self): user_agent = 'iOS/10.3' device_sn = utils.gen_random_string(15) os_platform = 'ios' app_version = '2.8.6' token = self.get_token(user_agent, device_sn, os_platform, app_version) headers = {'device_sn': device_sn, 'token': token} return headers
def get_authenticated_headers(self): user_agent = 'iOS/10.3' device_sn = utils.gen_random_string(15) os_platform = 'ios' app_version = '2.8.6' token = self.get_token(user_agent, device_sn, os_platform, app_version) headers = { 'device_sn': device_sn, 'token': token } return headers
def get_authenticated_headers(self): ''' @summary:获取已经认证过的headers @return headers ''' user_agent = "ios/10.3" device_sn = utils.gen_random_string(15) # 设备序列号 os_platform = 'ios' # os平台 app_version = '2.8.6' # app版本 token = self.get_token(user_agent, device_sn, os_platform, app_version) headers = {"device_sn": device_sn, "token": token} return headers
def get_token(): ''' @summary:获取token @param :headers{User-Agent, device_sn, os_platform, app_version}、json{sign:@sign} @return response({success, msg/token}, status_code) ''' # post请求的headers:User-Agent,device_sn,os_platform,app_version user_agent = request.headers.get('User-Agent', '') device_sn = request.headers.get('device_sn', '') os_platform = request.headers.get('os_platform', '') app_version = request.headers.get('app_version', '') # post请求的内容 {sign : @sign} data = request.get_json() sign = data.get('sign', '') # 通过post请求的headers计算出签名sign expected_sign = utils.get_sign(user_agent, device_sn, os_platform, app_version) # 构建response response = None if expected_sign != sign: # 如果计算出的签名 和 传过来的签名不一致 result = {'success': False, 'msg': 'Authorization failed!'} response = make_response(json.dumps(result), 403) else: # 如果签名一致 token = utils.gen_random_string(16) # 创建一个随机字符串,当做token token_dict[device_sn] = token result = {'success': True, 'token': token} response = make_response(json.dumps(result), 200) # 构建response的headers response.headers['Content-Type'] = 'application/json' # 返回response return response