Программирование на Android: аутентификация и обмен данными с Java EE - PullRequest
1 голос
/ 27 апреля 2010

У меня есть приложение Java, работающее на сервере Tomcat с использованием Spring, Hibernate и т. Д., И два веб-интерфейса, один реализован в Tapestry 5, а другой - Flex с BlazeDS и Spring-BlazeDS.

В моем первом приложении для Android теперь я хочу войти на сервер и получить некоторые данные.

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

С тем, что я читал до сих пор, я попытался бы реализовать HTTPServlet на сервере и выполнять серверные вызовы через HTTP-клиент. В сервлете я, вероятно, мог бы использовать HTTPSession, чтобы проверить, приходит ли запрос от аутентифицированного пользователя. И данные я бы попытался отправить сериализованным (JSON). К сожалению, я никогда не делал таких вещей, и, возможно, я нахожусь на неправильном пути, и есть более удобные решения.

Ответы [ 2 ]

1 голос
/ 30 сентября 2010

О, да, есть много способов общения с сервером с Android. Первый способ - вы упоминаете, что каждый запрос будет иметь сервлет или контроллер, который будет перехватывать запрос и отправлять соответствующий ответ. Каждый раз, когда вам нужно добавить любое новое требование, вы создадите контроллер или сервлет и добавите запись в файл отображения и т. Д.

Второй метод - это использование сервис-ориентированной архитектуры, при которой вы будете предоставлять сервисы, а Android будет использовать эти сервисы. Этот метод прост и требует меньше времени для реализации.

Другой способ - использовать сокеты. как UDP или что-то в этом роде.

0 голосов
/ 12 сентября 2011

http://james -bennet.com /? Р = 167

Как делать запросы на отдых к веб-сервису. Пример в моей ссылке работает с API новостей Yahoo, формулируя правильные запросы get, а также извлекая и анализируя JSON для использования в приложении. Включает код.

...