Мне нужна помощь с веб-сервисами - PullRequest
2 голосов
/ 26 января 2011

Вот мой сценарий: у меня есть приложение для iPhone (написанное на Monotouch, но не имеющее ничего общего с дизайном), в котором есть расходные материалы.Я даю 25 бесплатных расходных материалов, когда приложение установлено.Если пользователь удаляет приложение и переустанавливает его, он теперь получает те же 25 бесплатных расходных материалов.Мне нужен способ предотвратить это.

Так что мне пришла в голову идея базы данных на сервере (хост моего сайта?), В котором был бы список UDID.Если UDID пользователя находится в базе данных (это означает, что он уже установил приложение), ответ отправляется обратно в приложение, чтобы установить количество расходных материалов равным нулю.Если UDID отсутствует в d / b, то он добавляется и так указывается ответ (новое приложение).

Я думаю об использовании REST (проще) и хоста Linux для серверной части.Мои вопросы:

  1. Есть ли лучший способ сделать это?
  2. Какой язык вы предпочитаете на сервере?
  3. Как насчет sqlREST?(выглядит очень хорошо для меня, но будет ли это работать в приведенном выше сценарии?)

Ответы [ 2 ]

1 голос
/ 27 января 2011

Хорошо, я могу сказать вам, какой будет выбран МОЙ язык: ASP.NET/C# в сочетании с БД SQL Server. Мой сайт работает на хостере, который предлагает эту комбинацию всего за несколько долларов в месяц.

Вам даже не нужны веб-сервисы. Вы можете просто настроить ASPX-страницу на вашем сервере и вызвать ее с помощью NSString.FromUrl (или как там называется метод): «mycounter.aspx? Udid = 1234». Каждый раз, когда страница вызывается, она увеличивает количество переданных идентификаторов устройства, и единственное, что она выводит, - это количество оставшихся запросов. Ваш клиент анализирует этот ответ на целое число и, если он равен нулю, информирует пользователя.

Вы, вероятно, должны добавить некоторое хэширование, чтобы убедиться, что злой Krumelur не пойдет на ваш URL и не вызовет его для случайных идентификаторов устройств, что сделает их непригодными для использования. : -)

Рене

0 голосов
/ 09 февраля 2011

Ответ действительно зависит от вашего веб-хостинга.И что они поддерживают.Это, вероятно, зависит от объема вашей транзакции и так далее.

Поскольку вы используете Monotouch, я собираюсь предположить, что вы чувствуете себя комфортно в мире .net / c #.

Я бы посмотрел веб-сервис WCF, написанный на c #.Это, в свою очередь, будет использовать сервер SQL для хранения.Конечно, вы можете просто перейти к хранимой процедуре SQL-сервера.

sqlREST выглядит интересно, но на первый взгляд кажется, что для этого нужно запустить стек Appache + Tomcat.

если вы просто хотите, чтобы наименьшая полоса работала, я согласен с другим постером ... Сервер ASP.NET + SQL тоже это сделает.

...