Эта статья является зеркальной статьёй машинного перевода, пожалуйста, нажмите здесь, чтобы перейти к оригиналу.

Вид: 13237|Ответ: 7

[JavaEE] Как реализовать проверку кода проверки на целевой странице?????

[Скопировать ссылку]
Опубликовано 19.03.2019 0:16:43 | | |
. <html页面>. .
<tr>
      <TDкласс=«td_left»>
         <Лейблfor=«Чек»>CAPTCHA</Лейбл>
      </TD>
      <TDкласс=«td_right чек»>
         <Входtype=«сообщение»id=«Чек»имя=«Чек»класс=«Чек»>
         <imgsrc="проверитьCodeServlet"высота=«32px»alt=""onclick="changeCheckCode(это)">
<Сценарийtype="text/javascript">
   //События с изображением
   ФункцияchangeCheckCode(img) {
      img.SRC="checkCodeServlet?"+Новые функцииДата().getTime();
                               }
</Сценарий>
      </TD>
   </tr>//验证码拼接部分Общественный классCheckCodeServletрасширяетHttpServlet{
   @Override
   Публичная пустотаdoGet(HttpServletRequest request, ответ HttpServletResponse)БроскиServletException, IOException{
      
      //Сервер предупреждает браузер не кэшировать
      response.setHeader(«прагма»,«Без кэша»);
      response.setHeader
(«управление кэшом»,«Без кэша»);
      response.setHeader
(«Истек»,"0");
      
      
//Создайте длинную историю в памяти80, широко30Стандартный чёрный фон
      //Параметр 1: Длина
      //Параметр 2: Ширина
      //Параметр 3: Цвет
      intширина =80;
      
intВысота =30;
      BufferedImage image =
Новые функцииBufferedImage(ширина, высота, буферизованное изображение.TYPE_INT_RGB);
      
      
//Возьми щётку
      Графика g = image.getGraphics();
      
//Установить цвет кисти на серый
      g.setColor(Цвет.СЕРЫЙ);
      
//Заполните картинку
      g.fillRect(0,0, ширина, высота);
      
      
//Продюсировано4случайный код проверки,12Ey
      String checkCode = getCheckCode();
      
//Введите кодHttpSessionТерпимая
      request.getSession().setAttribute(«код»,checkCode);
      
      
//Установить цвет кисти на жёлтый
      g.setColor(Цвет.ЖЁЛТЫЙ);
      
//Задайте размер шрифта
      g.setFont(Новые функцииШрифт("Чёрное тело",Шрифт.БОЛД,24));
      
//Запишите код проверки на изображение
      g.drawString(checkCode,15,25);
      
      
//Выводите изображение из памяти в браузер
      //Параметр 1: Объект изображения
      //Параметр 2: Формат изображения, например:PNG, JPG, GIF
      //Параметр 3: Где выводится изображение
      ImageIO.Писать(изображение,«PNG»,response.getOutputStream());
   
}
   /**
    *Продюсировано4Битовая случайная строка
    */
   ЧастныйСтрока getCheckCode() {
      Основа струны ="0123456789ABCDEFGabcdefg";
      
intразмер = основание. длина();
      Случайное r =
Новые функцииСлучайность();
      StringBuffer sb =
Новые функцииStringBuffer();
      
для(inti=1; i<=4; i++){
         //Продюсировано0КомуРазмер-1случайных значений
         intindex = r.nextInt(размер);
         
//уБазастрока получает индекс какиндексПерсонажи
         Чарc = base.charAt(индекс);
         
//воляcПоставьStringBufferИди в центр
         sb.append(c);
      
}
      Возвращениеsb.toString();
   
}
   @Override
   Публичная пустотаdoPost(HttpServletRequest request, ответ HttpServletResponse) БроскиServletException, IOException{
      это.doGet(Запрос, ответ);
   
}
}


Как этого добиться?










Предыдущий:Решение для обнаружения пакетов после неизвестных и недействительных сертификатов Android 7.0
Следующий:«Написание высококачественного кода: 150 предложений по улучшению программ на C++» Ли Цзянь (автор...
Опубликовано 19.03.2019 9:13:39 |


Принцип заключается в том, что когда пользователь получает код верификации, строка кода проверки сохраняется в сессии, а когда пользователь отправляет код верификации, она сравнивается со строкой сессии.
Опубликовано 19.03.2019 9:41:21 |
При сравнении конвертируйте случай
 Хозяин| Опубликовано 20.03.2019 13:14:55 |
QWERTYU Опубликовано 2019-3-19 09:41
При сравнении конвертируйте случай

Спасибо, старший брат
 Хозяин| Опубликовано 20.03.2019 13:15:34 |
Сяо Чжажа Опубликовано 2019-3-19 09:13
Принцип: когда пользователь получает код проверки, строка кода подтверждения сохраняется в сессии, а когда пользователь вводит код верификации, символы сессии ...

Благодаря большому парню вопрос Сяобая относительно низкий
Опубликовано 20.03.2019 13:24:54 |
Пу Чжибин Опубликовано 20.03.2019 13:15
Благодаря большому парню вопрос Сяобая относительно низкий

Всё нормально, они все пришли из Сяобай
 Хозяин| Опубликовано 20.03.2019 15:39:42 |
Сяо Чжажа Опубликовано 2019-3-19 09:13
Принцип: когда пользователь получает код проверки, строка кода подтверждения сохраняется в сессии, а когда пользователь вводит код верификации, символы сессии ...

Брат, у нас есть задание — выполнить трёхуровневую связь провинций и муниципалитетов, как это сделать, я добавлю тебя в WeChat
Опубликовано 20.03.2019 15:45:50 |
Пу Чжибин Опубликовано 20.03.2019 15:39
Брат, у нас позади задание — провести трёхуровневую связь провинций и городов, как это делать? Добавлю тебя в WeChat...

Сделай сам.

На HTML-странице есть 3 выпадающих окна для выбора: когда пользователь выбирает выпадающее меню, запускает событие изменения, запрашивает данные с интерфейса с идентификатором параметра и динамически добавляет возвращённые данные на следующий уровень выпадающего списка, общая идея такова.
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com