Как я могу обрабатывать запрос JSON в бутылке?

StackOverflow https://stackoverflow.com/questions/4058335

  •  27-09-2019
  •  | 
  •  

Вопрос

Мне нужно получить данные от JSON, передаваемой AJAX от клиента. В основном я использовал что-то вроде этого:

@route('/ajax')
def serve_ajax():
    return main.parse_request(json.dumps(dict(request.GET)))

Где main.parse_request - это функция, которая содержит некоторые логики для решения переменных в JSON (это основная процедура нашего игрового движка).

Таким образом, проблема в том, что я не могу правильно обрабатывать переменные JSON, преобразовав request.GET В Dict: потому что таким образом, что я уже писал, я не могу пройти вложенные объекты и массивы. Также каждое значение имеет тип строки, в то время как мне необходимо иметь целочисленные типы на целых числах и типах строки на остальных.

Или, поскольку я могу получить исходную строку запроса (по request.query_string), как я могу преобразовать строку запроса в оригинальный объект JSON?

Это было полезно?

Решение

Сейчас с бутылки 0.10, то request.json готов к использованию :)

Документ здесь.

Другие советы

request.json. ограничен Memfile_max..

Другой способ работает, если данные запроса больше memfile_max

json.load(request.body)
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top