//index.html 引入 <script type="text/javascript" charset="utf-8" src="https://g.alicdn.com/sd/ncpc/nc.js?t=2015052012"></script>
<template> <div> <!--No-Captcha渲染的位置,其中 class 中必須包含 nc-container--> <div id="slide" class="nc-container" /> </div> </template> <script type="text/javascript" charset="utf-8" src="https://g.alicdn.com/sd/ncpc/nc.js?t=2015052012"></script> <script> export default { data() { return { nc:'' // noCaptcha實例的值 } }, mounted() { // 初始化方法 this.init() }, methods: { init() { const self = this // 生成的隨機token const nc_token = [ 'FFFF0N00000000009699', // appkey(自己填寫) new Date().getTime(), Math.random() ].join(':') // 參數 const NC_Opt = { // id的值 renderTo: '#slide',// 聲明滑動驗證需要渲染的目標元素ID appkey: 'FFFF0N00000000009699', // appkey(自己填寫) scene: 'nc_login', // 場景值(當前pc登陸) 滑動驗證碼的主鍵,請勿將該字段定義為固定值。確保每個用戶每次打開頁面時,其token值都是不同的。系統默認的格式為:”您的appkey”+”時間戳”+”隨機數”。 token: nc_token, // token customWidth: '100%', // 滑動條的寬度 trans: { key1: 'code0' }, // //業務鍵字段,可為空。為便於線上問題的排查,建議您按照線上問題定位文檔中推薦的方法配置該字段值。 elementID: ['usernameID'], is_Opt: 0, language: 'cn', // 中文 isEnabled: true,// 是否啟用。一般情況,保持默認值(true)即可 timeout: 3000,// 內部網絡請求的超時時間。一般情況建議保持默認值(3000ms)。 times: 5,// 允許服務器超時重復次數,默認5次。超過重復次數后將觸發報錯。 callback: function(data) { // 前端滑動驗證通過時會觸發該回調參數。您可以在該回調參數中將請求標識(token)、會話ID(sessionid)、簽名串(sig)字段記錄下來,隨業務請求一同發送至您的服務端調用驗簽。 // 在這里可以拿到返回的數據 const param = { token: nc_token, sessionId: data.csessionid, sig: data.sig, scene: 'nc_login' } // 傳給父組件 這里我是封裝的組件 把值傳出去了 然后請求接口 self.$emit('handleSlideAly', param) } } this.nc = new noCaptcha(NC_Opt) // 用於自定義文案。詳細配置方法請參見自定義文案與多語言文檔。 this.nc.upLang('cn', { _startTEXT: '請按住滑塊,拖動到最右邊', _yesTEXT: '驗證通過', _error300: '哎呀,出錯了,點擊<a href="javascript:__nc.reset()">刷新</a>再來一次', _errorNetwork: '網絡不給力,請<a href="javascript:__nc.reset()">點擊刷新</a>' }) }, // 重置方法 api reset(){ this.nc.reset() } } } </script> <style lang="less" scoped> /deep/.nc-container .nc_scale { height: 42px; } /deep/.nc-container .nc_scale span { line-height: 42px; height: 42px; } </style>
參考鏈接:
滑動驗證-功能概述:https://help.aliyun.com/document_detail/121893.html?spm=5176.2020520162.0.0.4c4c5fb0Yh1s6S