Написание веб-службы WCF с потенциальными будущими клиентами iPhone и Android - PullRequest
0 голосов
/ 10 октября 2011

В настоящее время мы находимся в процессе переписывания нашего флагманского продукта, и мы подошли к тому моменту, когда мы должны рассмотреть наши варианты удаленного и мобильного доступа к нашему продукту. В целом, наш продукт приобретается и размещается нашими клиентами самостоятельно. Текущее состояние вещей использует службу WCF NetTcpBinding для взаимодействия с нашим настольным приложением, и это работает нормально. Однако этот вариант явно не подходит для наших веб-клиентов и мобильных клиентов.

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

  • Аутентификация на основе имени пользователя / пароля
  • Поведение сеанса (с сохранением состояния) (хотя локальная обработка всей информации о сеансе и отключение службы без * является опцией)
  • Возможность вызова той же службы из веб-приложения ASP.NET MVC , приложения iPhone / iPad и приложения Android (и, возможно, третичных платформ, таких как WP7 позже)

Я знаю, что мог бы просто реализовать сервис REST-ful и развернуть свои собственные решения для управления сеансами и аутентификации, но я бы предпочел придерживаться отраслевых соглашений, если это вообще возможно. Существует ли технология WCF (или набор технологий), которая решает эти проблемы способом, совместимым с тремя перечисленными платформами?

Ответы [ 2 ]

1 голос
/ 11 октября 2011

REST просто использует протокол HTTP, поэтому каждое устройство, выступающее в роли клиента HTTP, может использовать его. Это не протокол - вы определяете протокол, используемый через REST. Каждая мобильная платформа может использовать REST-сервисы, поэтому вы не должны сталкиваться с проблемой блокирования, а если вы не уверены, просто попробуйте сделать некоторые доказательства концепции.

Используйте WCF и проверьте новый Web-API (это все еще только предварительный просмотр, но это будет будущая версия WCF), потому что это упрощает разработку службы REST с WCF и добавляет новые функции. Для аутентификации вы можете использовать все, что доступно в HTTP - будет работать базовая аутентификация с HTTPS или вы можете проверить OAuth.

У меня есть одна большая проблема с вашими требованиями:

Поведение сеанса (с сохранением состояния) (хотя возможна локальная обработка всей информации сеанса и отключение службы без сохранения состояния)

REST-состояния для Репрезентативная передача состояния . По своей природе все состояния должны передаваться в запросе, потому что вы публикуете новые ресурсы, получаете существующие ресурсы и возвращаете их обратно. Размещая или публикуя ресурс, вы делаете переход состояния, определенный в ресурсе. Полностью с состоянием связи для RPC. Но действительно трудно думать об этом больше без глубокого знания вашего продукта.

1 голос
/ 10 октября 2011
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...