亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

登錄驗證碼資料詳解:新手入門指南

概述

验证码是一种用于验证用户身份的技术手段,广泛应用于网站注册、登录、表单提交等环节,以防止恶意登录和垃圾信息提交等问题。登录验证码资料详细介绍了登录验证码的作用、类型以及如何实现和优化其安全性,旨在提高网站的安全性和用户体验。

验证码的作用和类型

验证码的基本概念

验证码是一种用于验证用户身份的技术手段,通常由一组字母和数字组成,用于确保请求是由真正的用户发起的,而不是机器人。验证码在网站注册、登录、表单提交等环节被广泛应用,以防止恶意注册、恶意登录和垃圾信息提交等问题。

登录验证码的作用

登录验证码的主要作用是增加网站的安全性。通过要求用户输入验证码,可以有效防止恶意软件或机器人自动化工具的攻击。具体来说:

  1. 防止恶意登录:登录验证码能有效防止黑客使用自动化工具进行暴力破解。
  2. 增强用户信任:使用验证码可以提高用户对网站安全性的信任度。
  3. 避免垃圾注册:验证码能够有效防止垃圾账号的注册,提升网站的用户体验。

常见的验证码类型

验证码的形式多样,常见的类型包括:

  1. 文本验证码:由字母和数字组成的随机字符串,用户需要将看到的验证码输入到对应的输入框中。
  2. 图形验证码:通常包括一组扭曲变形的文字和数字,增加了识别难度,可以有效防止 OCR 识别。
  3. 语音验证码:通过语音播放验证码,适用于视觉障碍的用户。
  4. 图片验证码:用户需要识别图片中的内容并输入,常用于图片内容识别。
  5. 滑块验证码:用户需要通过拖动滑块来完成验证,适用于移动端和桌面端。
如何在网站上实现登录验证码

选择合适的验证码插件或服务

在选择验证码插件或服务时,需要考虑以下因素:

  1. 安全性:验证码服务的安全性是首要考虑的因素。
  2. 易用性:插件或服务是否易于集成和使用。
  3. 成本:是否需要付费,以及付费的复杂程度。
  4. 支持的平台:服务是否支持你的网站平台(如 PHP、Python、JavaScript 等)。
  5. 用户友好性:验证码是否易于用户理解和输入。

将登录验证码集成到网站中的步骤

  1. 安装验证码插件:首先,需要下载并安装合适的验证码插件或服务。

    • 示例:如果使用的是一个 PHP 插件,可以使用 Composer 安装:
      composer require vendor/package-name
  2. 配置插件:按照插件文档中的说明进行配置。

    • 示例:配置一个 PHP 验证码插件:

      require 'vendor/autoload.php';
      
      use PackageName\Captcha;
      
      $captcha = new Captcha();
      $captcha->setup(array(
        'length' => 6, // 验证码长度
        'width'  => 200, // 宽度
        'height' => 50, // 高度
      ));
  3. 生成验证码:在登录页面生成验证码。

    • 示例:在登录页面生成验证码:

      session_start();
      $captcha = new Captcha();
      $_SESSION['captcha_code'] = $captcha->generate();
      $image = $captcha->render();
      
      // 将验证码图片输出到前端
      echo '<img class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="data:image/png;base64,' . base64_encode($image) . '" alt="captcha">';
  4. 验证验证码:处理用户输入的验证码,并与服务器端生成的验证码进行对比。
    • 示例:验证用户输入的验证码:
      if ($_POST['captcha_input'] == $_SESSION['captcha_code']) {
        echo "验证通过";
      } else {
        echo "验证失败";
      }

如何在 Python 中实现验证码插件的集成

  1. 安装验证码插件:首先,需要安装一个 Python 验证码库。

    • 示例:使用 pip 安装:
      pip install captcha
  2. 配置插件:配置验证码生成器。

    • 示例:配置一个 Python 验证码插件:

      from captcha.image import ImageCaptcha
      
      image_captcha = ImageCaptcha(width=200, height=50)
      captcha_text = '123456'
      captcha_image = image_captcha.generate_image(captcha_text)
  3. 生成验证码:在登录页面生成验证码。

    • 示例:在登录页面生成验证码:

      from captcha.image import ImageCaptcha
      from flask import Flask, session, render_template, request
      
      app = Flask(__name__)
      
      @app.route('/login')
      def login_form():
        image_captcha = ImageCaptcha(width=200, height=50)
        captcha_text = '123456'
        captcha_image = image_captcha.generate_image(captcha_text)
        session['captcha_code'] = captcha_text
        return render_template('login.html', captcha=captcha_image)
      
      @app.route('/verify', methods=['POST'])
      def verify_captcha():
        if request.form.get('captcha_input') == session['captcha_code']:
            return "验证通过"
        else:
            return "验证失败"
  4. 验证验证码:处理用户输入的验证码,并与服务器端生成的验证码进行对比。
    • 示例:验证用户输入的验证码:
      if request.form.get('captcha_input') == session['captcha_code']:
        return "验证通过"
      else:
        return "验证失败"

如何在 JavaScript 中实现验证码插件的集成

  1. 引入验证码插件:引入一个 JavaScript 验证码插件。

    • 示例:引入一个 JavaScript 验证码插件:
      <script class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="https://cdn.jsdelivr.net/npm/react-captcha@latest/dist/react-captcha.min.js"></script>
  2. 生成验证码:在登录页面生成验证码。

    • 示例:在登录页面生成验证码:
      <div id="captcha"></div>
      <script>
      const captcha = new ReactCaptcha();
      captcha.appendTo('#captcha');
      </script>
  3. 验证验证码:处理用户输入的验证码,并与服务器端生成的验证码进行对比。
    • 示例:验证用户输入的验证码:
      const captchaCode = document.getElementById('captcha').value;
      if (captchaCode === sessionCaptchaCode) {
        console.log("验证通过");
      } else {
        console.log("验证失败");
      }

通过以上步骤,可以将验证码功能集成到网站的登录流程中,从而提高网站的安全性。

登录验证码的常见问题及解决方法

验证码显示不清如何处理

验证码显示不清可能会导致用户难以辨认和输入验证码,因此需要采取一些措施来解决这个问题:

  1. 增加解析度:提高验证码图片的分辨率,使其更清晰。

    • 示例:代码示例:
      $captcha = new Captcha();
      $captcha->setup(array(
        'width' => 200, // 宽度
        'height' => 50, // 高度
      ));
  2. 增加噪音和扭曲:通过增加噪音和扭曲来增加验证码的复杂度,使 OCR 识别更加困难。

    • 示例:代码示例:
      $captcha = new Captcha();
      $captcha->setup(array(
        'length' => 6, // 验证码长度
        'width' => 200, // 宽度
        'height' => 50, // 高度
        'distortions' => ['noise', 'skew'], // 增加噪音和扭曲
      ));
  3. 提供刷新功能:允许用户重新生成一个清晰的验证码。
    • 示例:代码示例:
      <a href="#" onclick="reloadCaptcha()">刷新验证码</a>
      <script>
      function reloadCaptcha() {
        document.location.reload(); // 刷新页面以重新生成验证码
      }
      </script>

用户频繁输错验证码怎么办

用户频繁输错验证码不仅会影响用户体验,还可能导致用户厌烦并离开网站。为了减少这种情况的发生,可以采取以下措施:

  1. 增加提示信息:当用户输入错误时,提供明确的提示信息,告诉用户如何正确输入。

    • 示例:代码示例:
      <div id="captcha-message"></div>
      <script>
      if (captchaInput !== captchaCode) {
        document.getElementById('captcha-message').innerHTML = '验证码错误,请重新输入';
      }
      </script>
  2. 增加验证码输入次数限制:设置用户可以尝试输入验证码的次数,超过限制则阻止用户继续尝试。

    • 示例:代码示例:
      $retryCount = isset($_SESSION['captcha_retry_count']) ? $_SESSION['captcha_retry_count'] : 0;
      if ($retryCount > 3) {
        echo "验证码输入次数过多,请稍后再试";
      } else {
        if ($_POST['captcha_input'] == $_SESSION['captcha_code']) {
            echo "验证通过";
        } else {
            $_SESSION['captcha_retry_count']++;
            echo "验证码错误,请重新输入";
        }
      }
  3. 提供语音验证码:对于视觉困难的用户,提供语音验证码可以提高用户体验。
    • 示例:代码示例:
      <button onclick="playCaptcha()">听语音验证码</button>
      <audio id="captcha-audio" class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="path/to/captcha_audio.mp3"></audio>
      <script>
      function playCaptcha() {
        document.getElementById('captcha-audio').play();
      }
      </script>

验证码被机器人破解怎么办

验证码被机器人破解会严重威胁网站的安全性。除了提高验证码的安全性,还可以采取以下措施:

  1. 使用更复杂的验证码:使用图形验证码、滑块验证码等更复杂的验证码形式,增加破解难度。

    • 示例:代码示例:
      $captcha = new Captcha();
      $captcha->setup(array(
        'length' => 6,
        'width' => 200,
        'height' => 50,
        'distortions' => ['noise', 'skew'],
        'type' => 'image', // 使用图形验证码
      ));
  2. 限制登录频率:限制用户在短时间内可以进行登录的次数,防止机器人进行高频次的暴力破解。

    • 示例:代码示例:
      if (time() - $_SESSION['last_login_time'] < 60) {
        echo "登录过快,请稍后再试";
      } else {
        $_SESSION['last_login_time'] = time();
        // 进行登录验证...
      }
  3. 启用 CAPTCHA 服务:使用第三方 CAPTCHA 服务(如 Google reCAPTCHA),这些服务通常具有较高的安全性和有效性。

    • 示例:代码示例:

      require 'vendor/autoload.php';
      
      use Google\ReCaptcha\ReCaptcha;
      
      $recaptcha = new ReCaptcha($siteKey, $secretKey);
      $response = $recaptcha->verify($_POST['g-recaptcha-response'], $_SERVER['REMOTE_ADDR']);
      
      if ($response->isSuccess()) {
        echo "验证通过";
      } else {
        echo "验证失败";
      }

通过以上措施,可以有效提升验证码的安全性和用户体验,防止机器人进行暴力破解。

登录验证码的用户体验优化

如何提高验证码的安全性和用户体验

提高验证码的安全性和用户体验需要综合考虑多个因素,以下是一些建议:

  1. 图形验证码:图形验证码相比文本验证码更加难以被 OCR 识别,安全性更高。

    • 示例:代码示例:
      $captcha = new Captcha();
      $captcha->setup(array(
        'length' => 6,
        'width' => 200,
        'height' => 50,
        'type' => 'image', // 使用图形验证码
      ));
  2. 滑块验证码:滑块验证码不仅安全,而且用户交互体验较好,适用于桌面和移动端。

    • 示例:代码示例:
      <div id="captcha-container"></div>
      <script class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="https://static.geetest.com/prebuilt/geetest.js"></script>
      <script>
      const captcha = new Geetest({
        gt: 'your_geetest_gt',
        challenge: 'your_geetest_challenge',
        product: 'popup', // 滑块验证码
        offline: false,
        new_captcha: true,
      });
      captcha.appendTo('#captcha-container');
      captcha.onSuccess(function() {
        console.log("验证通过");
      });
      captcha.onError(function() {
        console.log("验证失败");
      });
      </script>
  3. 语音验证码:语音验证码可以提高视觉障碍用户的体验,同时增加验证码的复杂度。

    • 示例:代码示例:
      <audio id="captcha-audio" class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="path/to/captcha_audio.mp3"></audio>
      <script>
      function playCaptcha() {
        document.getElementById('captcha-audio').play();
      }
      </script>
  4. 验证码翻译:为不同语言的用户提供翻译,提高全球用户的使用体验。

    • 示例:代码示例:
      <div id="captcha-container"></div>
      <script>
      const captcha = new Geetest({
        gt: 'your_geetest_gt',
        challenge: 'your_geetest_challenge',
        product: 'popup', // 滑块验证码
        offline: false,
        new_captcha: true,
      });
      captcha.appendTo('#captcha-container');
      captcha.onSuccess(function() {
        console.log("验证通过");
      });
      captcha.onError(function() {
        console.log("验证失败");
      });
      captcha.onGetLocale(function(locale) {
        // 根据 locale 进行翻译
      });
      </script>
  5. 验证码自动刷新:如果用户无法正确识别验证码,提供自动刷新验证码的功能。
    • 示例:代码示例:
      <a href="#" onclick="reloadCaptcha()">刷新验证码</a>
      <script>
      function reloadCaptcha() {
        document.location.reload(); // 刷新页面以重新生成验证码
      }
      </script>

用户友好的验证码设计建议

为了保证验证码的用户体验,设计验证码时需要遵循以下几点建议:

  1. 简单明确的提示:在验证码输入框旁边提供清晰的提示信息,告知用户如何正确输入。

    • 示例:代码示例:
      <input type="text" id="captcha-input">
      <span id="captcha-message"></span>
      <script>
      if (captchaInput !== captchaCode) {
        document.getElementById('captcha-message').innerHTML = '验证码错误,请重新输入';
      }
      </script>
  2. 合理的错误反馈:当用户输入错误时,提供明确的错误反馈,引导用户正确输入。

    • 示例:代码示例:
      <input type="text" id="captcha-input">
      <span id="captcha-message"></span>
      <script>
      if (captchaInput !== captchaCode) {
        document.getElementById('captcha-message').innerHTML = '验证码错误,请重新输入';
      }
      </script>
  3. 无障碍设计:考虑到不同用户的需求,提供语音验证码或大字体验证码等选项。
    • 示例:代码示例:
      <button onclick="playCaptcha()">听语音验证码</button>
      <audio id="captcha-audio" class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="path/to/captcha_audio.mp3"></audio>
      <script>
      function playCaptcha() {
        document.getElementById('captcha-audio').play();
      }
      </script>

通过以上建议,可以提高验证码的安全性并优化用户体验,确保用户在使用验证码过程中感到方便和安全。

验证码安全性的考量

验证码安全性的重要性

验证码不仅在保护网站免受恶意登录、注册和提交垃圾信息等方面具有重要作用,还涉及以下方面:

  1. 防止欺诈行为:验证码可以有效防止欺诈行为,如盗取用户账号、进行虚假交易等。
  2. 保护用户隐私:通过验证码验证用户身份,可以保护用户的个人信息不被恶意使用。
  3. 防止滥用资源:验证码可以防止滥用网站资源,如频繁的登录尝试、恶意注册等行为。

常见的验证码安全性问题

  1. OCR 识别攻击:OCR 技术能够识别并解析图像中的文字,从而破解图形验证码。

    • 解决方案:使用更复杂的图形扭曲和噪音,增加 OCR 识别的难度。
    • 示例:代码示例:
      $captcha = new Captcha();
      $captcha->setup(array(
        'length' => 6,
        'width' => 200,
        'height' => 50,
        'distortions' => ['noise', 'skew'],
      ));
  2. 机器人自动化攻击:机器人通过脚本自动发起大量的验证码请求,以破解验证码。

    • 解决方案:使用滑块验证码或声音验证码,增加破解难度。
    • 示例:代码示例:
      <div id="captcha-container"></div>
      <script class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="https://static.geetest.com/prebuilt/geetest.js"></script>
      <script>
      const captcha = new Geetest({
        gt: 'your_geetest_gt',
        challenge: 'your_geetest_challenge',
        product: 'popup', // 滑块验证码
        offline: false,
        new_captcha: true,
      });
      captcha.appendTo('#captcha-container');
      captcha.onSuccess(function() {
        console.log("验证通过");
      });
      captcha.onError(function() {
        console.log("验证失败");
      });
      </script>
  3. 验证码泄漏:如果验证码生成和验证过程中存在安全漏洞,可能会导致验证码泄漏。
    • 解决方案:确保验证码的生成和验证过程是安全的,使用加密存储和传输验证码。
    • 示例:代码示例:
      session_start();
      $captcha = new Captcha();
      $_SESSION['captcha_code'] = $captcha->generate();
      $image = $captcha->render();
      echo '<img class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="data:image/png;base64,' . base64_encode($image) . '" alt="captcha">';

如何增强登录验证码的安全性

  1. 定期更新验证码算法:定期更新验证码算法和生成规则,防止被破解。

    • 示例:代码示例:
      $captcha = new Captcha();
      $captcha->setup(array(
        'length' => 6,
        'width' => 200,
        'height' => 50,
      ));
  2. 使用 CAPTCHA 服务:使用第三方 CAPTCHA 服务(如 Google reCAPTCHA),这些服务通常具有较高的安全性和有效性。

    • 示例:代码示例:

      require 'vendor/autoload.php';
      
      use Google\ReCaptcha\ReCaptcha;
      
      $recaptcha = new ReCaptcha($siteKey, $secretKey);
      $response = $recaptcha->verify($_POST['g-recaptcha-response'], $_SERVER['REMOTE_ADDR']);
      
      if ($response->isSuccess()) {
        echo "验证通过";
      } else {
        echo "验证失败";
      }
  3. 多因素认证:结合其他身份验证方法(如密码、手机验证码等),提高安全性。

    • 示例:代码示例:

      require 'vendor/autoload.php';
      
      use Google\ReCaptcha\ReCaptcha;
      
      $recaptcha = new ReCaptcha($siteKey, $secretKey);
      $response = $recaptcha->verify($_POST['g-recaptcha-response'], $_SERVER['REMOTE_ADDR']);
      
      if ($response->isSuccess()) {
        if (verifyPassword($_POST['password'])) {
            echo "登录成功";
        } else {
            echo "密码错误";
        }
      } else {
        echo "验证失败";
      }

通过以上措施,可以增强登录验证码的安全性,有效防止恶意攻击,保护网站和用户的安全。

实战案例分享

成功集成登录验证码的网站案例分析

以下是一个成功集成登录验证码的网站案例分析:

网站背景

假设一个在线教育网站需要提高其登录安全性,防止恶意登录和账号被盗。因此,决定在登录页面集成验证码功能。

验证码选择

该网站选择了 Google reCAPTCHA 服务,因为 Google reCAPTCHA 服务提供了较高的安全性和用户体验。reCAPTCHA 支持多种验证码类型,包括图形验证码和滑块验证码,可以满足不同的需求。

集成步骤

  1. 安装和配置 reCAPTCHA

    • 使用 Composer 安装 Google reCAPTCHA PHP 客户端:
      composer require google/recaptcha
    • 在网站中生成 reCAPTCHA API 密钥并进行配置:

      require 'vendor/autoload.php';
      
      use Google\ReCaptcha\ReCaptcha;
      
      $siteKey = 'your_site_key'; // 站点密钥
      $secretKey = 'your_secret_key'; // 秘钥
      $recaptcha = new ReCaptcha($siteKey, $secretKey);
  2. 生成验证码

    • 在登录页面引入 reCAPTCHA 插件并生成验证码:
      <div class="g-recaptcha" data-sitekey="your_site_key"></div>
      <script class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="https://www.google.com/recaptcha/api.js"></script>
  3. 验证验证码
    • 在登录验证逻辑中验证用户输入的验证码:
      if (isset($_POST['g-recaptcha-response'])) {
        $response = $recaptcha->verify($_POST['g-recaptcha-response'], $_SERVER['REMOTE_ADDR']);
        if ($response->isSuccess()) {
            // 进行登录验证...
            echo "登录成功";
        } else {
            echo "验证码验证失败,请重新尝试";
        }
      } else {
        echo "请勾选验证码";
      }

实战过程中遇到的问题及解决方案

  1. 验证码显示问题:在某些浏览器或设备上,reCAPTCHA 可能无法正确显示。

    • 解决方案:确保 reCAPTCHA JavaScript 文件正确加载,并检查浏览器或设备兼容性。
    • 示例代码:
      <script class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="https://www.google.com/recaptcha/api.js" async defer></script>
  2. 错误提示不够明确:用户无法理解错误提示信息,导致困惑和不便。
    • 解决方案:在错误提示信息中提供详细的说明,告诉用户如何正确输入验证码。
    • 示例代码:
      <div id="captcha-message"></div>
      <script>
      if (!response.isSuccess()) {
        document.getElementById('captcha-message').innerHTML = '验证码验证失败,请重新尝试';
      }
      </script>

通过上述案例分析,可以学到如何在网站中成功集成验证码功能,以提高登录安全性,并解决实际应用中遇到的问题。

點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消