Я строю модуль MCQ (модуль MCQ онлайн) для студентов.поэтому здесь я столкнулся с проблемой, связанной с тем, что я определил одного студента как одно устройство.просто думай, что у одного студента есть одно устройство для экзамена.но когда дело доходит до локальной сети, она не работает из-за подсетей и прочего.
, пожалуйста, помогите мне решить эту проблему.что я должен сделать, чтобы избежать этой проблемы?я предоставил свой бэкэнд здесь.
класс РЕПО
@Repository
public interface StudentExamRepository extends
CrudRepository<StudentExam,Long>
{
@Query(value = "select * from student_exam where exam_link_id = ?1 and
(student_id = ?2 or attempted_ip = ?3)", nativeQuery = true)
List<StudentExam> findByExamLinkIdStudentIdAndIp( long examId, long
studentId, String ip );
}
класс обслуживания
public Boolean hasStudentAttempted( long examLinkId, long studentId, String attemptedId )
{
return studentExamRepository.findByExamLinkIdStudentIdAndIp( examLinkId, studentId, attemptedId ).size() != 0;
}
@RequestMapping(method = RequestMethod.GET, value = "/allowed/hasStudentAttempted")
public ResponseEntity<Boolean> hasStudentAttempted( @RequestParam long examLinkId, @RequestParam long studentId, HttpServletRequest request )
{
return new ResponseEntity<>( studentExamService.hasStudentAttempted( examLinkId, studentId, request.getRemoteAddr() ), HttpStatus.OK );
}
класс контроллера
@RequestMapping(method = RequestMethod.GET, value = "/allowed/hasStudentAttempted")
public ResponseEntity<Boolean> hasStudentAttempted( @RequestParam long examLinkId, @RequestParam long studentId, HttpServletRequest request )
{
return new ResponseEntity<>( studentExamService.hasStudentAttempted( examLinkId, studentId, request.getRemoteAddr() ), HttpStatus.OK );
}