mod python, получить параметры POST из объекта запроса

Есть ли какой-нибудь базовый пример, показывающий, как получить параметры POST из запроса в пользовательском обработчике mod python. У меня нет проблем с запросами GET, где я получаю свои аргументы из request.args, НО, если метод POST, request.args имеет значение None.

Спасибо.


person ScotchAndSoda    schedule 23.10.2012    source источник
comment
Пожалуйста, не пишите новый код с mod_python. Он устарел и не поддерживается.   -  person Daniel Roseman    schedule 23.10.2012
comment
@DanielRoseman: Я так и думал, но mod_python официально утверждает, что в настоящее время mod_python не находится в активной разработке. Это не означает, что он мертв, как утверждают некоторые люди. Это просто означает, что код и проект достаточно зрелы, когда для их поддержки требуется совсем немного.. Это утверждение неверно?   -  person Tadeck    schedule 23.10.2012
comment
@Matthias: Да, я знаком с этим (и я знал это в течение некоторого времени), но через 4 месяца официальный mod_python сказал что-то еще (см. выше), так что, по крайней мере, он не был мертв (или он уже мучился в время, когда Грэм написал это).   -  person Tadeck    schedule 23.10.2012
comment
Некоторые дистрибутивы Linux обдумывают или уже решили отказаться от пакетов mod_python из своей будущей версии. Это должно быть убедительным признаком того, что было бы неразумно продолжать его. Последняя официальная версия mod_python не основана на последних версиях Apache 2.2 или 2.4. Поэтому, если вы не готовы взять на себя поддержку и разработку mod_python самостоятельно, предлагаем вам поискать альтернативы на основе WSGI.   -  person Graham Dumpleton    schedule 25.10.2012


Ответы (1)


request.args хранит параметры строки запроса в виде упомянутый в документации.

Если вы хотите получить переменные POST, вы всегда можете прочитать тело запроса (request.read()) и проанализируйте его (в вашем случае urldecode).

Но имейте в виду, что, как указано на официальной домашней странице mod_python:

Текущее состояние Mod_Python

В настоящее время mod_python не находится в активной разработке. Это не означает, что он мертв, как утверждают некоторые люди. Это просто означает, что код и проект достаточно зрелы, когда для их поддержки требуется совсем немного.

Это означает, что вам может быть лучше использовать что-то более современное, например mod_wsgi.

person Tadeck    schedule 23.10.2012
comment
Спасибо за Ваш ответ. Я знаю, что wsgi теперь является стандартным, и у меня есть опыт работы с ним, но в этом случае мне нужно включить простой скрипт python в проект php (из-за слабости php для конкретной задачи), поэтому mod_python, похоже, подходит для этого. - person ScotchAndSoda; 23.10.2012