def locations(): if 'key' not in request.args: return utils.error('Missing "key" argument.') DEVELOPMENT = 'ODE4NTYzODY1ODY1MDAyNTQ4Mjc2NDIyNTk4MjUwMjI6c3FqNnE3c2pqdDUwZnZ1NXRpaW1kaXJjaHduZG1jNmhjMXAxZ3oyZ3BmMnZsZmg3b2hmdDU3emowcThqNzMyMA==' STAGING = 'OTQ0MjIwMDEzNzUzMzk2OTY2Mzc2MTQyMzM5NjgxNDI6OXY3cHFxMXh0eTVtZnNvNXp4NXJzOXFhcTE2MWh5ZG4wN3l5OG1wcThyNXRycmo4aGJsYzEwNTB6NnFodDlvdQ==' PRODUCTION = 'ODI1OTAzOTI2NzcyNzcxNzcxNTI0MTA5ODk1ODA2NDc6cDFwd3hoanFiM2NiazdyMWlwdXFjeG85MjRreDN1dDQzNDBmd3hvd3pxM3F4bjlidmMzdml0bzlsa2N2NGl0bA==' key = request.args.get('key', PRODUCTION) base_url = 'https://config-api-dot-{}-euw-gmal-mcdonalds.appspot.com' if key == DEVELOPMENT: url = base_url.format('dev') + request.path elif key == STAGING: url = base_url.format('stg') + request.path elif key == PRODUCTION: url = base_url.format('prd') + request.path params = { 'key': key } headers = { 'User-Agent': 'okhttp/3.12.0' } r = requests.request(request.method, url, params=params, headers=headers) if r.status_code != 200: return utils.request_error(r) x = json.loads(r.content.decode()) return utils.json_response(x)
def getLevels(): """ Consultar niveles. \n """ """ @api {get} /v1/rewards/levels Consultar Niveles @apiName Consultar Niveles @apiGroup Niveles @apiUse AuthHeader @apiSuccessExample {json} Respuesta HTTP/1.1 200 OK { “pointValue” : “{pointValue}”, “{levelId}” : { “levelName” : “{levelName}”, “minPointValue” : “{minPointValue}”, “maxPointValue” : “{maxPointValue}” } } @apiUse Errors """ print(db.levels.count()) results = db.levels.find({}) levels = { 'pointValue': db.scores.find_one({"name": "cotizacion"})["pointValue"], } for level in results: levelName = level["levelName"] minPointValue = level['minPointValue'] maxPointValue = level['maxPointValue'] levelData = { 'levelName': levelName, 'minPointValue': minPointValue, 'maxPointValue': maxPointValue } levels[str(level['_id'])] = levelData if (not results): raise error("el find no funciona") return levels
def add_record(request, model_name): """ Добавляет новую запись модели. """ # определим класс модели model = get_model(app_label='app', model_name=model_name) # добавим запись try: dct = {} for k, v in request.POST.iteritems(): dct[k] = v model.objects.create(**dct) except Exception as e: return error('Ошибка формата' if e.message == '' else e.message) return ok({'model_name': model_name})
def change_field(request, model_name): """ Обновляет запись модели. Взод: POST['field_name_id'] = "имя поля модели,ИД записи" POST['new_value'] = "новое значение для записи" """ # определим класс модели model = get_model(app_label='app', model_name=model_name) # находим нужную запись и обновляем ее значение (field_name, record_id) = request.POST['field_name_id'].split(',') item = model.objects.get(id=record_id) item.__dict__[field_name] = request.POST['new_value'] try: item.save() except Exception as e: return error('Ошибка формата' if e.message == '' else e.message) return ok()
def locationfinder(): if 'key' not in request.args: return utils.error('Missing "key" argument.') DEVELOPMENT = 'NjE3MjgxMjMwNDY3MDY5NTcwMTMwNTQwMjExODY1NDQ6YTNzdWsxcGsxNW1peHdybnBtZ2pwdXNmODMyNzNhOGgwbXR4ejk3NmU2b29iam1xNzV4Nmppb21panE2eWljcg==' STAGING = 'NzUyMzE2NzQyMjI0NjUyMTY0NDQ2NDI4NjI5ODA1NTE6cGE5ZTdlOHYyeGN0bWo2Nml1NGhldjMzbGNhajA1czJlMnF5c3RkaXAwaWRnNTRrdnc5eDllcnBmeWR2c3E2cw==' PRODUCTION = 'MDAwNzc3Mzg4MTg5MDI0OTM5NzI1MjE4OTA5MTgyNDY6bWE4bDNjeTh6cmkydHNnMWZicjMwMGpiYWY5NXZ1aTFpc2hmNW0xdTBsNzRlcXZraHVncmEwaTJ1aGQ4amlqZA==' key = request.args.get('key', PRODUCTION) base_url = 'https://locationfinder-api-dot-{}-euw-gmal-mcdonalds.appspot.com' if key == DEVELOPMENT: url = base_url.format('dev') + request.path elif key == STAGING: url = base_url.format('stg') + request.path elif key == PRODUCTION: url = base_url.format('prd') + request.path params = { 'key': key } headers = { 'User-Agent': 'okhttp/3.12.0' } location = { 'country': { 'name': 'Italy', 'code': 'IT' }, 'location': { 'latitude': 0.0, 'longitude': 0.0 } } return utils.json_response(location)
def handle_connection(conn, addr): data = b"" with conn: while data != RESP.sstring("quit") or data != RESP.bstring("quit"): data = conn.recv(1024) # special form of PING command if data.upper() == RESP.sstring("PING"): conn.sendall(RESP.bstring("PONG")) data_tokens = data.rstrip(b"\r\n").split(b"\r\n") if len(data_tokens) < 3: utils.error(conn, "Too few arguments passed. Please check.") continue if utils.bad_cmd_format(data_tokens): utils.error( conn, "Array formatting is not RESP-compliant. Please check.") continue cmd, *args = data_tokens[2:] try: res = handle_request(cmd, args) conn.sendall(res) except (ValueError, NotImplementedError) as e: utils.error(conn, str(e)) continue