2012-02-12 4 views
0

현재 투표 시스템에 대한 서버에서 요청을 보내는 앱을 작업 중입니다. 문제는 사람들이 등록없이 투표 할 수 있다는 것입니다. 그러나 투표를 여러 번하고 싶지 않고 이것을 확보하는 방법을 모르겠습니다. 나는 핵심 시스템 (응용 프로그램에서 생성되고 서버에서 검증 됨)에 대해 생각했지만 이것이 최선의 해결책이라고 확신하지 못했습니다. 어떻게해야합니까?iPhone에서 서버로 보안 요청

+0

앱에서 너무 복잡하여이를 처리하지 못합니다. 서버에서 중복 투표를 발견하면 적합한 메시지로 두 메시지를 모두 버립니다. –

답변

4

두 가지 가능한 해결책이 있습니다.

1) 각 응답에 대한 서버

에 중복 로그인을 검출 코드 핸들 장치 ID 투표의 식별자에 대하여 서버는 캐스팅. 서버는 해당 주제에 대해 중복 투표를 무시하고 "실패"응답을 되돌려 보냅니다. 이것은 장치에 의해 처리됩니다.

장점 : 중앙 투표 논리. 서버에서 한 번 변경하고 야생에서 모든 버전의 앱을 준수하십시오.

단점 : 서버 로직을 구축해야합니다. ObjectiveC에 익숙하다면 문제가 될 수 있습니다. 투표 한 주제와 투표 한 데이터베이스의 데이터베이스를 유지 관리해야합니다.

2) 장치는 모든 투표 항목의 목록을 다운로드 이미 선정 된 주제별로 필터 장치

에 중복 투표를 감지 코드를 처리합니다. 사용자가 주제에 투표하면 해당 주제의 ID가 필터 목록에 추가됩니다.

장점 : 투표 주제 목록 이외의 데이터베이스 유지 관리가 필요하지 않습니다.

단점 : 사용자가 앱을 제거하고 다시 설치하고 다시 투표 할 수 있습니다. 투표 논리를 변경하려면 (예 : 사람들이 주제에 대해 두 번 투표 할 수있게하려면) 기존의 모든 응용 프로그램을 업데이트해야합니다.

분명히 투표 논리를 앱에 넣으면 앱이 더 복잡해집니다. 그러나 추가 된 복잡성은 앱 또는 서버에서 어딘가에 흡수되어야합니다.

관련 문제