Apache модуль FORM обработки в C

голоса
4

Я реализую модуль Apache 2.0.x в C, чтобы взаимодействовать с существующим продуктом мы имеем. Мне нужно обрабатывать данные FORM, скорее всего, с помощью POST, но я хочу, чтобы обрабатывать случай GET, а также.

Ник Кью модули Apache книга имеет раздел по обработке данных формы. Он содержит примеры кода для POST и GET, который возвращает apr_hash_t из ключевых пар + значения в форме. parse_form_from_POST Маршаллова ковшовой бригады и сглаживает его в буфер, в то время как parse_form_from_GET может просто ссылаться на URL. Обе процедуры полагаются на рутину parse_form_from_string , чтобы пройти через каждый разделителями поля и извлекать информацию в хэш - таблицу.

Это было бы хорошо, но мне кажется, что там должна быть более простой способ сделать это, чем добавить пару сотен строк кода в мой модуль. Есть ли существующий модуль или подпрограммы в апаче, арг, или APR-Util для извлечения имен полей и связанные с ними данные из GET или POST FORM в структуру которой код C может легко получить доступ? Я не могу найти что-либо отношение, но это похоже на общую потребность в котором должна быть решением.

Задан 19/09/2008 в 17:27
источник пользователем
На других языках...                            


3 ответов

голоса
0

В то время как, на его взгляд, это может показаться общими, CGI-стиль и обработчики содержимого в C на апача довольно редко. Большинство людей просто использовать CGI, FastCGI, или множество структур, таких как mod_perl.

Большинство апача модулей C, что я написал направлено на изменение конкретного поведения веб-сервере в конкретных, целенаправленных способах, которые применимы к каждому запросу.

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

Ответил 19/09/2008 в 17:39
источник пользователем

голоса
1

Я перешел к G-WAN, который предлагает прозрачный ANSI C интерфейс сценариев для GET и POST формы (и многих других лакомств, как диаграммы, GIF I / O, и т.д.).

Несколько примеров AJAX доступны на странице разработчика Гван

Надеюсь, поможет!

Ответил 16/12/2010 в 10:47
источник пользователем

голоса
0

Я еще не пробовал какое-либо решение, так как я нашел этот вопрос SO как результат моего собственного разочарования примера в книге «Модули Apache», а также. Но вот что я нашел, до сих пор. Я буду обновлять этот ответ, когда я исследовал больше.

К счастью, похоже , теперь это решаемая проблема в Apache 2.4 с использованием ap_parse_form_dataFunciton.

Не знаю , насколько хорошо это работает по сравнению с вашим примером, но здесь не является гораздо более лаконичной read_postфункцией .

Также возможно , что mod_formможет иметь значение.

Ответил 20/10/2012 в 13:22
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more