2011-12-16 2 views
3

В моем приложении mpc asp.net мне нужно разрешить только один клик, а точнее вычисление, вызванное нажатием кнопки только один раз на IP. Например: каждый пользователь может голосовать только один раз. Можно ли это сделать с помощью C#? Где подходящее место для начала, пожалуйста? Дайте мне знать, если мне нужно перефразировать вопрос. Спасибо!Один щелчок кнопки на IP

+3

Вы знаете, что ** ** много больше, чем один пользователь может использовать один IP? –

+0

@Joel Coehoorn, правда. Что бы вы предложили в этом случае? – mishap

+0

Зарегистрируйте голосование против пользователя и отключите голосование дальше, чтобы он не голосовал снова на том же. (иначе большинство вещей здесь, на SO, будет hv upvoted n раз :)) – V4Vendetta

ответ

1

Существует множество способов сделать это, что я сделал с моим приложением.

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

Во-вторых, вы можете использовать куки. Это опять же не является 100% -ным безопасным подходом, поскольку люди могут их удалить. Однако вы можете использовать это в сочетании с IP-адресом.

Третье, если у вас есть приложение для Facebook, здесь вы можете получить лучшую защиту. Вы просто проверяете Facebook UserId. Вы можете сделать это, если вы сделаете своих избирателей также в Facebook, даже если ваше приложение не является обычным приложением Facebook на вкладке страницы.

Для кодирования вам нужна база данных для хранения этих значений и проверки при просмотре. Однако на высокоскоростном узле он тяжело нагружает DB, поэтому некоторое кэширование также является хорошим началом (если вы используете общий сетевой/веб-хостинг, убедитесь, что ваш кеш не работает)

1

Да, полностью согласовано с Joel Coehoom.

В этом случае я бы предложил использовать MAC-адрес.

Для получения справки об этом попробовать эти следующие ссылки:

PhysicalAddress

Get MAC address of client machine using C#

+0

Возможно ли получить MAC-адрес клиента через веб-приложение? –

+0

не невозможно.http: //stackoverflow.com/questions/888907/web-server-to-fetch-clients-machine-mac-address –

Смежные вопросы