py.lib.aw_web_tools
py.lib.aw_web_tools/src/aw_web_tools/btle_tools.py
Added tag 0.202402.2 for changeset cb0dd8d1c0e9
1 # coding: utf-8
2 """\
3 Набор инструментов, для более удобного взаимодействия с фреймворком ``bottle``
4 """
14 VARIABLE_PREFIX = 'ru.a0fs.app' # Префикс переменных и иных структур, которые сохраняются во внутренних
15 # структурах ``bottle``
17 # Имена заголовков взяты из собственного стандарта на конфигурарование nginx. При не совпадении нужно сменить.
19 REQ_ID_HEADER = 'X-Request-Id' # Заголовок запроса, в котором может храниться уникальный ID запроса,
20 # выставленного реверс-прокси.
26 Получение реального адреса клиента
27 """
38 Конструируем некий отпечаток пользовательской сессии.
40 В качестве параметра принимается всё, что должно участвовать в создании отпечатка.
41 Это всё превращается в строки и подмешивается в хэш
42 """
51 Более интеллектуальная процедура преобразования базовых типов
53 :param value: Значение, которое необходимо преобразовать
54 :param new_value_type: Тип, в который необходимо преобразовать значение
55 :param postprocess: Применять ли последующую обработку полученного результата
56 :returns: Значение ``value`` преобразованное к типу ``value_type``
57 """
80 Возвращает значения из хранилища контекста запроса bottle
81 """
92 Устанавливает значения в хранилище контекста запроса bottle
93 """
99 Преобразует значение ``val`` в пригодное для преобразования в json значение.
100 """
124 Формирует ``API`` ответ.
125 """
149 Если в запросе, который мы обрабатываем в текущий момент, использовалась посылка данных JSON, получить их.
150 """
160 Получить значение ``cookie`` с заданным именем из текущего запроса.
161 """
168 Получить из обрабатываемого на данный момент запроса значения установленного параметра. Обрабатываются как
169 ``GET``, так и ``POST`` параметры, если иное не указано конкретно.
171 :param name: Имя параметра
172 :param param_type: Тип, в который нужно преобразовать полученный параметр
173 :param default: Значение, отдаваемое, если параметр не установлен в запросе
174 :param postprocess: Производить ли постобработку параметра
175 :param param_source: Источник параметра, [``get``, ``post``]
176 :returns Полученное из запроса значение
177 """
211 Создаём строку, идентифицирующую данный запрос для журналирования операций.
213 :param user: Если известен пользователь, задаём его здесь
214 """
242 Создание сообщения об ошибке для JSON REST API сервисов
244 :param code: HTTP-код ответа
245 :param err: Либо объект исключения, либо название ошибки
246 :param msg: Если не ``None`` - сообщение об ошибке. В противном случае, если ``err`` является исключением,
247 сообщение берётся из ``str(err)`` если нет, становится пустой строкой.
248 :param remove_cookies: Список cookie, которые должны быть удалены с клиента.
249 :param cookies: Набор cookies вставляемый в конструктор ответа без изменений. Читать в соответствующем
250 параметре ``make_response``
251 """