Java: чтение данных POST из сокета на HTTP-сервере - PullRequest
1 голос
/ 30 апреля 2010

У меня есть веб-сайт (python / django), который должен использовать загрузку ресурсов Java, которые могут находиться или не находиться на одном и том же сервере. Поэтому я пишу мини-веб-сервер на Java, который получит запрос, а затем, когда обработка будет завершена, поместите некоторые данные обратно в URL на сайте.

У меня есть Java-код, который получает соединения через сокеты и отвечает простым HTML-кодом.

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

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

Спасибо

Ответы [ 2 ]

4 голосов
/ 30 апреля 2010

Вам, вероятно, не нужно писать http-сервер самостоятельно, просто используйте какой-нибудь облегченный веб-сервер / контейнер сервлетов Java, например jetty или simple

и ищет здесь, если вы все еще хотите знать, как разобрать запрос HTTP POST http://www.jmarshall.com/easy/http/#postmethod

0 голосов
/ 30 апреля 2010

В вашем случае я, вероятно, не буду работать с низкоуровневыми сокетными соединениями.

Я рекомендую вам использовать контейнер сервлета с каким-либо веб-сервисом или, может быть, только простой сервлет в зависимости от ваших потребностей.С помощью сервлета вы можете легко получить доступ к данным POST, обработать их и вернуть что-нибудь вызывающей стороне.

Если вы не хотите использовать отдельный контейнер сервлета, такой как Tomcat, вы можете попробовать встраиваемый контейнер сервлета, такой как Jetty.или контейнер сервлетов winstone.

Если вам нужно что-то более сложное, вы можете использовать некоторые технологии веб-сервиса, такие как JAX-RS или JAX-WS.Это позволяет вам легко предоставить полнофункциональный API для ваших ресурсов Java.

...