Python подход к веб-сервисам и / или управление GET и POST - PullRequest
2 голосов
/ 22 января 2010

Я уже некоторое время работаю с python. Недавно я попал в Sockets with Twisted, который был хорош для изучения Telnet, SSH и передачи сообщений. Я хотел взять идею и реализовать ее в сети. Неделя поиска и все, что я действительно могу сделать, это создать ресурс, который обрабатывает GET и POST для себя. И это, как мне говорят, плохая практика.

Итак, вопросы, которые я имею после одной недели:
* Являются ли другие варианты, такие как Tornado и Standard Python Sockets, лучшим (или более популярным) подходом?
Нужно ли использовать отдельные ресурсы в операциях Twisted GET и POST?
Что является хорошим ресурсом для начала в этой области разработки Python?

Мой опыт работы с языками - C, Java, HTML / DHTML / XHTML / XML, а основные системы (даже домашние) - Linux.

Ответы [ 3 ]

1 голос
/ 22 января 2010

Если то, что вы делаете, - это скорее веб-сайт, чем API, используйте обычную веб-среду, например Django .

1 голос
/ 22 января 2010

Я бы рекомендовал не создавать свой собственный веб-сервер и обрабатывать необработанные вызовы сокетов для создания веб-приложений; гораздо больше смысла просто писать свои веб-сервисы как приложения wsgi и использовать существующий веб-сервер, будь то торнадо или apache с mod_wsgi.

0 голосов
/ 26 января 2012

Я постараюсь ответить на ваши различные вопросы индивидуально.

Есть ли другие варианты, такие как Tornado и Standard Python Sockets, лучше (или более популярный) подход?

Каркасы WSGI на сегодняшний день являются наиболее популярными вариантами. Они могут дать вам доступ к GET и POST примитивам, но часто обертывают их достаточным количеством синтаксического сахара чтобы быстро отправиться на гонки.

Вряд ли кто-то имеет дело с сокетами для htt. Чтобы дать вам представление, одна из наиболее популярных http-библиотек, запрашивает , изначально обернутая urrllib2 до недавнего времени .

Следует ли действительно использовать отдельные ресурсы в операциях Twisted GET и POST?

Я не могу говорить об этом, поскольку я не разработчик Twisted. Кажется, это язык сам по себе.

Что такое хороший ресурс для начала в этой области разработки Python?

Для обработки GETs и POSTs, Webob , вероятно, хорошее место для начала.

Для некоторого большего контекста, webob оборачивает базовые примитивы Python, поступающие из WSGI (рифмуется со словом «виски»). WSGI - это интерфейс между веб-приложениями и серверами, мало чем отличающийся от CGI .

PEP 3333 , документ, который определил стандарт WSGI, является действительно хорошим местом для начала, если вы заинтересованы в мельчайших подробностях http.

Пойдя немного ниже в стеке, есть также несколько серверов WSGI, которые стоит проверить. Размещенные в облаке сервисы «Платформа как услуга» (PaaS), такие как Google App Engine и Heroku , позаботятся о вас. С другой стороны, существуют специализированные серверы wsgi, такие как gunicorn и Tornado , последний из которых вы уже знакомы.

Если вы хотите просто сделать что-то, проверьте Бутылку , Колбу , Django или любую другую замечательную веб-среду Python. .

...