웹 프론트엔드 JS 튜토리얼 JavaScript를 사용하여 이미지 인증 코드 기능을 구현하는 방법은 무엇입니까?

JavaScript를 사용하여 이미지 인증 코드 기능을 구현하는 방법은 무엇입니까?

Oct 20, 2023 am 11:54 AM
javascript 성취하다 이미지 인증 코드

如何使用 JavaScript 实现图片验证码功能?

JavaScript를 사용하여 이미지 인증 코드 기능을 구현하는 방법은 무엇입니까?

네트워크 기술의 지속적인 발전으로 인해 웹사이트 보안은 점점 더 중요해지고 있습니다. 등록, 로그인 등의 작업에서는 정상적인 사용자 작업을 보장하고 로봇이나 악성 프로그램의 액세스를 방지하기 위해 그래픽 인증 코드가 자주 사용됩니다. 그래픽 인증코드는 무작위로 생성된 인증코드 이미지를 표시하고 사용자가 작업을 완료하려면 올바른 인증코드를 입력하도록 요구하는 인증 방법입니다.

이 글에서는 JavaScript를 사용하여 이미지 인증 코드 기능을 구현하는 방법을 소개하고 구체적인 코드 예제를 제공합니다.

  1. 준비

코드 작성을 시작하기 전에 다음 자료를 준비해야 합니다.

  • 다양한 문자가 포함된 인증 코드 이미지
  • 사용자가 입력한 인증 코드가 올바른지 확인하는 데 사용되는 서버 측 API 올바른
  1. HTML 구조

먼저 HTML 파일에 인증 코드를 표시하기 위한 <img> 태그와 인증 코드를 입력하기 위한 텍스트 상자를 추가해야 합니다. <img> 标签以及一个输入验证码的文本框。

<!DOCTYPE html>
<html>
<head>
  <title>图片验证码示例</title>
</head>
<body>
  <img id="captchaImage" src="captcha.jpg" alt="验证码">
  <input type="text" id="captchaInput" placeholder="请输入验证码">
  <button id="verifyButton">验证</button>

  <script src="captcha.js"></script>
</body>
</html>
로그인 후 복사
  1. JavaScript 代码

接下来,让我们来编写 JavaScript 代码,实现验证码的生成和校验功能。

// 获取页面元素
const captchaImg = document.getElementById('captchaImage');
const captchaInput = document.getElementById('captchaInput');
const verifyButton = document.getElementById('verifyButton');

// 点击验证码图片刷新验证码
captchaImg.addEventListener('click', function() {
  refreshCaptcha();
});

// 点击验证按钮进行验证码校验
verifyButton.addEventListener('click', function() {
  verifyCaptcha();
});

// 刷新验证码
function refreshCaptcha() {
  // 使用服务器端 API 获取新的验证码图片
  // 并更新验证码图片的 src 属性
  captchaImg.src = 'new_captcha.jpg';
}

// 校验验证码
function verifyCaptcha() {
  const userInput = captchaInput.value;

  // 使用服务器端 API 验证用户输入的验证码是否正确
  fetch('/verify-captcha', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({ captcha: userInput })
  })
  .then(response => response.json())
  .then(data => {
    if (data.result === 'success') {
      alert('验证码正确');
    } else {
      alert('验证码错误');
    }
  })
  .catch(error => {
    console.error('验证码校验失败', error);
  });
}
로그인 후 복사

在上述代码中,我们使用了 fetch 函数来发送异步请求,使用服务器端提供的 API 进行验证码的校验。根据服务器端返回的校验结果,我们可以弹出相应的提示框。

请确保将 <script src="captcha.js"></script> 放在 HTML 文件的末尾,以确保 JavaScript 代码在页面加载完毕后执行。

  1. 服务器端实现

服务器端的实现方式因语言和框架的不同而有所差异。一般情况下,服务器端会提供一个 API 接口,接收用户输入的验证码并进行验证,返回校验结果。

以下是一个简单的 Node.js 服务器端示例代码:

const express = require('express');
const app = express();
const bodyParser = require('body-parser');

// 解析 application/json
app.use(bodyParser.json());

// 校验验证码
app.post('/verify-captcha', (req, res) => {
  const userInput = req.body.captcha;

  // 进行验证码校验
  if (userInput === 'correct_code') {
    res.json({ result: 'success' });
  } else {
    res.json({ result: 'failure' });
  }
});

const port = 3000;
app.listen(port, () => {
  console.log(`服务器运行在 http://localhost:${port}`);
});
로그인 후 복사

以上代码中的 /verify-captcharrreee

    JavaScript code
    1. 다음으로 인증코드 생성 및 인증 기능을 구현하기 위한 JavaScript 코드를 작성해보겠습니다.
    rrreee

    위 코드에서는 fetch 함수를 사용해 비동기 요청을 보내고, 서버에서 제공하는 API를 사용해 인증코드를 검증했습니다. 서버에서 반환된 확인 결과에 따라 해당 프롬프트 상자를 팝업할 수 있습니다.

    페이지가 완료된 후 JavaScript 코드가 실행되도록 HTML 파일 끝에 <script src="captcha.js"></script>를 반드시 넣어주세요. 짐을 실은.

      🎜서버측 구현🎜🎜🎜서버측 구현은 언어와 프레임워크에 따라 다릅니다. 일반적으로 서버는 사용자가 입력한 인증코드를 받아 이를 검증하고 인증결과를 반환하는 API 인터페이스를 제공합니다. 🎜🎜다음은 간단한 Node.js 서버 측 샘플 코드입니다. 🎜rrreee🎜위 코드의 /verify-captcha 경로는 프런트 엔드 코드의 확인 인터페이스에 해당합니다. 실제 상황에 따라 수정될 수 있습니다. 🎜🎜🎜요약🎜🎜🎜이 글에서는 인증코드 새로고침, 사용자 입력 검증 등 자바스크립트와 서버측의 협력을 통해 간단한 이미지 인증코드 기능을 구현합니다. 실제 필요에 따라 코드를 수정하고 확장하여 인증 코드의 보안과 유용성을 향상시킬 수 있습니다. 🎜🎜마지막으로, 인증코드는 단순한 인증 수단일 뿐 로봇이나 악성 프로그램의 접근을 완전히 막을 수는 없다는 점에 유의할 필요가 있습니다. 실제 적용에서는 IP 제한, 사용자 행동 분석 등과 같은 다른 보안 전략을 결합하여 웹 사이트의 보안을 향상시킬 수도 있습니다. 🎜

위 내용은 JavaScript를 사용하여 이미지 인증 코드 기능을 구현하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Chrome에 인증코드 이미지가 표시되지 않으면 어떻게 해야 하나요? Chrome에 인증코드 이미지가 표시되지 않으면 어떻게 해야 하나요? Mar 13, 2024 pm 08:55 PM

Google 크롬에 인증 코드 이미지가 표시되지 않으면 어떻게 해야 하나요? Google Chrome을 사용하여 웹페이지에 로그인할 때 인증 코드가 필요한 경우가 있습니다. 일부 사용자는 이미지 인증 코드를 사용할 때 Chrome에서 이미지 내용을 제대로 표시할 수 없다는 사실을 발견합니다. 무엇을 해야 합니까? 아래 편집기에서 Chrome 인증 코드가 표시되지 않는 문제를 해결하는 방법을 소개하겠습니다. 모든 분들께 도움이 되길 바랍니다! 방법 소개: 1. 소프트웨어를 입력하고 오른쪽 상단 모서리에 있는 "추가" 버튼을 클릭한 다음 아래 옵션 목록에서 "설정"을 선택하여 들어갑니다. 2. 새 인터페이스에 들어간 후 왼쪽의 "개인정보 설정 및 보안" 옵션을 클릭하세요. 3. 오른쪽의 '웹사이트 설정'을 클릭하세요.

Huawei 휴대폰에서 이중 WeChat 로그인을 구현하는 방법은 무엇입니까? Huawei 휴대폰에서 이중 WeChat 로그인을 구현하는 방법은 무엇입니까? Mar 24, 2024 am 11:27 AM

Huawei 휴대폰에서 이중 WeChat 로그인을 구현하는 방법은 무엇입니까? 소셜 미디어의 등장으로 WeChat은 사람들의 일상 생활에 없어서는 안될 커뮤니케이션 도구 중 하나가 되었습니다. 그러나 많은 사람들이 동일한 휴대폰에서 동시에 여러 WeChat 계정에 로그인하는 문제에 직면할 수 있습니다. Huawei 휴대폰 사용자의 경우 듀얼 WeChat 로그인을 달성하는 것은 어렵지 않습니다. 이 기사에서는 Huawei 휴대폰에서 듀얼 WeChat 로그인을 달성하는 방법을 소개합니다. 우선, 화웨이 휴대폰과 함께 제공되는 EMUI 시스템은 듀얼 애플리케이션 열기라는 매우 편리한 기능을 제공합니다. 앱 듀얼 오픈 기능을 통해 사용자는 동시에

PHP 프로그래밍 가이드: 피보나치 수열을 구현하는 방법 PHP 프로그래밍 가이드: 피보나치 수열을 구현하는 방법 Mar 20, 2024 pm 04:54 PM

프로그래밍 언어 PHP는 다양한 프로그래밍 논리와 알고리즘을 지원할 수 있는 강력한 웹 개발 도구입니다. 그중 피보나치 수열을 구현하는 것은 일반적이고 고전적인 프로그래밍 문제입니다. 이 기사에서는 PHP 프로그래밍 언어를 사용하여 피보나치 수열을 구현하는 방법을 소개하고 구체적인 코드 예제를 첨부합니다. 피보나치 수열은 다음과 같이 정의되는 수학적 수열입니다. 수열의 첫 번째와 두 번째 요소는 1이고 세 번째 요소부터 시작하여 각 요소의 값은 이전 두 요소의 합과 같습니다. 시퀀스의 처음 몇 가지 요소

Huawei 휴대폰에서 WeChat 복제 기능을 구현하는 방법 Huawei 휴대폰에서 WeChat 복제 기능을 구현하는 방법 Mar 24, 2024 pm 06:03 PM

Huawei 휴대폰에서 WeChat 복제 기능을 구현하는 방법 소셜 소프트웨어의 인기와 개인 정보 보호 및 보안에 대한 사람들의 강조가 높아지면서 WeChat 복제 기능이 점차 주목을 받고 있습니다. WeChat 복제 기능을 사용하면 사용자가 동일한 휴대폰에서 여러 WeChat 계정에 동시에 로그인할 수 있으므로 관리 및 사용이 더 쉬워집니다. Huawei 휴대폰에서 WeChat 복제 기능을 구현하는 것은 어렵지 않습니다. 다음 단계만 따르면 됩니다. 1단계: 휴대폰 시스템 버전과 WeChat 버전이 요구 사항을 충족하는지 확인하십시오. 먼저 Huawei 휴대폰 시스템 버전과 WeChat 앱이 최신 버전으로 업데이트되었는지 확인하세요.

Golang이 어떻게 게임 개발 가능성을 가능하게 하는지 마스터하세요 Golang이 어떻게 게임 개발 가능성을 가능하게 하는지 마스터하세요 Mar 16, 2024 pm 12:57 PM

오늘날의 소프트웨어 개발 분야에서 효율적이고 간결하며 동시성이 뛰어난 프로그래밍 언어인 Golang(Go 언어)은 점점 더 개발자들의 선호를 받고 있습니다. 풍부한 표준 라이브러리와 효율적인 동시성 기능으로 인해 게임 개발 분야에서 주목받는 선택이 되었습니다. 이 기사에서는 게임 개발에 Golang을 사용하는 방법을 살펴보고 특정 코드 예제를 통해 Golang의 강력한 가능성을 보여줍니다. 1. 게임 개발에서 Golang의 장점 Golang은 정적인 유형의 언어로서 대규모 게임 시스템을 구축하는 데 사용됩니다.

PHP 게임 요구 사항 구현 가이드 PHP 게임 요구 사항 구현 가이드 Mar 11, 2024 am 08:45 AM

PHP 게임 요구사항 구현 가이드 인터넷의 대중화와 발전으로 인해 웹 게임 시장이 점점 더 대중화되고 있습니다. 많은 개발자는 PHP 언어를 사용하여 자신만의 웹 게임을 개발하기를 원하며 게임 요구 사항을 구현하는 것이 핵심 단계입니다. 이 문서에서는 PHP 언어를 사용하여 일반적인 게임 요구 사항을 구현하는 방법을 소개하고 특정 코드 예제를 제공합니다. 1. 게임 캐릭터 만들기 웹게임에서 게임 캐릭터는 매우 중요한 요소입니다. 이름, 레벨, 경험치 등 게임 캐릭터의 속성을 정의하고, 이를 운용할 수 있는 방법을 제공해야 합니다.

Golang에서 정확한 나눗셈 연산을 구현하는 방법 Golang에서 정확한 나눗셈 연산을 구현하는 방법 Feb 20, 2024 pm 10:51 PM

Golang에서 정확한 나눗셈 작업을 구현하는 것은 특히 재무 계산과 관련된 시나리오 또는 고정밀 계산이 필요한 기타 시나리오에서 일반적인 요구 사항입니다. Golang에 내장된 나눗셈 연산자 "/"는 부동 소수점 수에 대해 계산되며 때로는 정밀도가 손실되는 문제가 있습니다. 이 문제를 해결하기 위해 타사 라이브러리나 사용자 정의 기능을 사용하여 정확한 분할 작업을 구현할 수 있습니다. 일반적인 접근 방식은 분수 표현을 제공하고 정확한 나눗셈 연산을 구현하는 데 사용할 수 있는 math/big 패키지의 Rat 유형을 사용하는 것입니다.

Hotcoin Global 거래소에 등록하는 방법 Hotcoin Global 앱을 다운로드하는 방법은 무엇입니까? Hotcoin Global 거래소에 등록하는 방법 Hotcoin Global 앱을 다운로드하는 방법은 무엇입니까? Aug 16, 2024 pm 05:18 PM

HotcoinGlobal Exchange 등록 방법: 공식 웹사이트 방문: https://www.hotcoin.global/ 등록 방법 선택: 이메일 또는 휴대폰 번호 등록 정보(이메일 또는 휴대폰 번호, 비밀번호, 인증 코드) 입력 동의 이용약관 동의 및 인증번호 획득 인증번호를 입력하시면 등록이 완료됩니다.

See all articles