Безопасный запрос с iPhone на сервер - PullRequest
0 голосов
/ 12 февраля 2012

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

1 Ответ

4 голосов
/ 14 февраля 2012

Для этого есть два возможных решения.

1) Обработка кода, который обнаруживает дублирующийся голос на сервере

Для каждого поданного голосования сервер сохраняет идентификатор устройства против идентификатораголосование.Сервер игнорирует любые дубликаты голосов, поданных за эту тему, и отправляет ответ «провал».Это обрабатывается устройством.

Плюсы: логика централизованного голосования.Измените его один раз на сервере, и все версии приложений в дикой форме соответствуют.

Минусы: вам нужно построить логику сервера.Если вам удобнее с ObjectiveC, это может быть проблемой.Вы должны вести базу данных тем голосования и устройств, которые проголосовали.

2) Обрабатывать код, который обнаруживает повторное голосование на устройстве

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

Плюсы: нет обслуживания базы данных, кроме списка тем для голосования.

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

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

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