Вопрос

Я хочу создать веб-сервис, который позволит пользователям вводить долготу и широту для конкретного здания. Здания будут относиться к более широкой категории, называемой Регион. Если конкретное здание не существует в регионе, пользователь может добавить данные о долготе и широте через веб-сервис. Точно так же, если пользователь считает данные неточными, он может обновить их.

Этот веб-сервис не должен иметь веб-интерфейс только RESTful API, который был бы доступен только для моих приложений. Я хочу, чтобы веб-сервис мог принимать новые и обновленные данные (как описано выше), а также распечатывать соответствующие данные (в формате xml) на основе соответствующих вызовов API.

Мне нужно убедиться, что эти данные будут в безопасности, то есть никто не сможет получить доступ к накопленным мной данным.

Каков наилучший способ сделать это? Я знаком с клиентской Java и не очень много серверной технологии (не знаком с серверной Java, rails, django и т. Д ...). Какой язык / рамки следует использовать, чтобы удовлетворить мои потребности с минимальной кривой обучения?

Это было полезно?

Решение

Если вы никогда не программировали серверный код, то, боюсь, вы столкнетесь с довольно крутой кривой обучения. Если вы знакомы с Java, то хорошим выбором будет фреймворк Restlet, упомянутый другим комментатором. Он прост в использовании, включает в себя как клиентские, так и серверные инструменты, и имеет довольно приличную документацию. Видео скриншоты очень хорошие.

Другой вариант - это Ruby on Rails. В настоящее время я реализую нечто очень похожее на то, что вы планируете, и Rails сработал очень хорошо. Rails имеет встроенную поддержку вывода XML через класс ActiveRecord и шаблоны XML Builder. Я использовал аутентификацию Atom ( http://www.xml.com /pub/a/2003/12/17/dive.html ) между клиентом и сервером, и это прекрасно работает. Для Ruby и Rails есть кривая обучения, но мощь фреймворка того стоит. Я неравнодушен к книгам по Ruby и Rails в The Pragmatic Programmer, но у О'Рейли есть и хорошие.

Другие советы

Вы можете просто использовать обычную аутентификацию (имя пользователя / pw) с включенным ssl. Таким образом, вы шифруете соединение и предоставляете широко поддерживаемые средства аутентификации. Я верю, что Apache Axis позаботится о большей части этого для вас.

Я использовал среду Restlet для развертывания веб-служб, защищенных паролем. Он поддерживает базовую аутентификацию и некоторые другие из коробки. Вы также можете настроить свои службы за https " соединителем сервера ".

Другой подход - запустить приложение на сервере приложений Java EE, который поддерживает JSR 196 (например, Glassfish или JBoss). Затем вы будете использовать возможности сервера для установления аутентификации.

Вот страница безопасности Glassfish .

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top