Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Web
  • » Как получить данные из GET запроса? [RSS Feed]

#1 Июнь 26, 2015 12:10:18

shag12
Зарегистрирован: 2015-06-26
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Как получить данные из GET запроса?

Некая система передает на мой сервер HTTP запрос вида:

http://server.domen/objects/?XXX=YYYY&ZZZ=PPPP

На сервере стоит апач с прикрученным к нему mod_python.

Как мне забрать эти данные?

Изменить сам запрос невозможно - оно вот так шлет :-(…

Офлайн

#2 Июнь 26, 2015 13:28:38

cutwater
От:
Зарегистрирован: 2009-01-08
Сообщения: 444
Репутация: +  19  -
Профиль   Отправить e-mail  

Как получить данные из GET запроса?

Можете начать отсюда:

http://modpython.org/live/current/doc-html/tutorial.html#quick-overview-of-how-apache-handles-requests

Но по хорошему нужно уже давно выбросить mod_python на свалку истории и использовать более современные инструменты.



Офлайн

#3 Июнь 26, 2015 13:42:25

shag12
Зарегистрирован: 2015-06-26
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Как получить данные из GET запроса?

mod_python - не критичен. Мне все равно.

Критичны 2 вещи - Апач, ибо уже стоит и выполнятет другие функции. И Питон - т.к. нужно использовать специфические библиотеки для дальнейшей обработки, иначе-бы не парился, и написал-бы на PHP.

Офлайн

#4 Июнь 26, 2015 15:53:00

cutwater
От:
Зарегистрирован: 2009-01-08
Сообщения: 444
Репутация: +  19  -
Профиль   Отправить e-mail  

Как получить данные из GET запроса?

Как вариант ставьте mod_wsgi.

http://lucumr.pocoo.org/2007/5/21/getting-started-with-wsgi/

Можете использовать WebOb \ Werkzeug чтобы получить удобную обертку над Request \ Response. Но думаю для этой задачи можно обойтись и без них.



Офлайн

#5 Июнь 27, 2015 00:11:46

shag12
Зарегистрирован: 2015-06-26
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Как получить данные из GET запроса?

Спасибо большое за идею.

Поставил WSGI - код в итоге вообще простейший получился!

def application(environ, start_response):
    lines = {}
    for val in environ["QUERY_STRING"].split('&'):
         lines[val.split('=')[0]]=val.split('=')[1]
    start_response("200 OK", [("Content-Type", "text/plain")])
    f = open("/var/wsgi-scripts/file.f", 'a')
    f.write(environ["QUERY_STRING"] + "\n")
    f.write(lines['gpio4'] + "\n")
    f.close()
    return ["\n"]

Офлайн

  • Начало
  • » Web
  • » Как получить данные из GET запроса? [RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version