本文作者:IMWeb leinue

未经同意,禁止转载

一行代码生成登录表单是 Authing.cn 提供的工具,以下是其使用文档

一行代码生成表单仅适用于 JavaScript 客户端应用,该功能简称 Login-Form。

该表单拥有以下基本功能:

邮箱/密码登录注册

忘记密码以及重置密码

记住账号功能(加密存储到浏览器本地)

第三方 OAuth 登录(需先在后台配置)

小程序扫码登录(需先在后台配置)

响应式特性

使用步骤

1. 引入代码

目前只支持 script 引入,暂不支持 NPM 安装,使用了本功能的开发者可以不必再安装 authing-js-sdk,因为通过 script标签引入的代码中包含了 authing-js-sdk。

2. 显示表单

初始化 AuthingForm 即可。

new AuthingForm({

clientId: '填入_Authing_的_client_ID',

secret: '填入_Authing_client_ID_的_secret'

});

完成这两步后就可以使用表单了。

3. 完整代码

clientId: '填入_Authing_的_client_ID',

secret: '填入_Authing_client_ID_的_secret'

});

为了应用的安全起见,建议参数中的 secret 以加密方式存储在客户端代码中。

高级功能

方法

Login-Form 提供了两个方法用以操作界面的显示和隐藏,方法名见下表:

方法名称

方法参数

功能

show

mountId

指定 Authing form 将在何处显示,接受一个 html 元素 id,不含#号。不指定则默认全屏弹出 Modal 登录框

hide

隐藏表单

在初始化完构造函数后会自动执行 show 方法。

完整参数

Login-Form 的构造函数 AuthingForm 提供了一些高级功能。

以下是完整的参数列表:

参数名称

是否必填

默认值

类型

参数说明

回调参数

clientId

String

Authing Client ID

-

secret

String

Authing Client Secret

-

mountId

String

指定 Authing form 将在何处显示,接受一个 html 元素 id,不含#号。不指定则默认全屏弹出 Modal 登录框

-

title

Authing

String

产品名称

-

logo

[Authing LOGO]

String

产品logo,默认为 Authing 的官方 Logo

-

forceLogin

false

Boolean

是否将注册和登录合并,合并后如果用户不存在将自动注册

-

hideQRCode

false

Boolean

是否隐藏小程序扫码登录,在开发者在 Authing 控制台开启小程序扫码登录后,若此项为 true 将不显示小程序扫码登录

-

hideUP

false

Boolean

是否隐藏用户名-密码登陆,隐藏后将不显示用户名-密码登录框

-

hideUsename

false

Boolean

是否隐藏注册时的用户名填写,隐藏后将不显示用户名输入框

-

hideOAuth

false

Boolean

是否隐藏第三方 OAuth 登录,在开发者在 Authing 控制台开启 OAuth 登录后,若此项为 true 将隐藏全部 OAuth 登录

-

hideClose

false

Boolean

是否隐藏登录框右上角的关闭按钮,如果隐藏,用户将不能通过点击按钮或按 ESC 关闭登录框

-

placeholder

false

Object

定制输入框的 paceholder

-

placeholder.username

请输入用户名

String

定制输入框的 paceholder

-

placeholder.email

请输入邮箱

String

用户名输入框的 paceholder

-

placeholder.password

请输入密码

String

邮箱输入框的 paceholder

-

placeholder.confirmPassword

请确认密码

String

密码输入框的 paceholder

-

placeholder.verfiyCode

请输入验证码

String

验证码输入框的 paceholder

-

placeholder.newPassword

请输入新密码

String

新密码输入框的 paceholder

-

qrcodeScanning

false

Object

小程序扫码登录的配置项

-

qrcodeScanning.redirect

true

Boolean

是否执行跳转(在用户后台配置的URL),若值为false,用户数据会通过 onSuccess 回调函数返回

-

qrcodeScanning.onSuccess

null

Function

登录成功后回调函数,redirect为true时不回调此函数

user

qrcodeScanning.onError

null

Function

登录失败后回调函数,一般为网络问题

error

qrcodeScanning.onIntervalStarting

null

Function

轮询时的回调函数,intervalNum 为 setInterval 返回的数值,可使用 clearInterval 停止轮询

intervalNum

qrcodeScanning.interval

1500

Number

每隔多少秒检查一次是否扫码,默认1500

-

qrcodeScanning.tips

使用 微信 或小程序 身份管家 扫码登录

String

提示信息,可写HTML

-

完整代码:

var form = new AuthingForm({

// 必选,client ID

clientId: '5b7f79f519915500015f18ac',

// 必选,secret

secret: '82f36cba243e13f81f06675193732af7',

title: 'Authing',

logo: 'https://cdn.authing.cn/authing-logo.png',

forceLogin: false,

hideQRCode: false,

hideUP: false,

hideOAuth: false,

hideUsername: false,

hideClose: true,

mountId: 'app',

// 输入框的placeholder

placeholder: {

username: '',

email: '',

password: '',

confirmPassword: '',

verfiyCode: '',

newPassword: ''

},

qrcodeScanning: {

redirect: true, // 可选,是否执行跳转(在用户后台配置的URL),默认为true,相关用户信息回传至url上

onSuccess: function (res){

}, // 可选,登录成功后回调函数,redirect为true时不回调此函数

onError: function (error){

}, // 可选,登录失败后回调函数,一般为网络问题

onIntervalStarting: function (intervalNum){

}, // 可选,轮询时的回调函数,intervalNum 为 setInterval 返回的数值,可使用 clearInterval 停止轮询

interval: 1500, // 可选,每隔多少秒检查一次是否扫码,默认1500

tips: '使用 微信 或小程序 身份管家 扫码登录', // 可选,提示信息,可写HTML

}

});

事件响应

Login-Form 还提供了 十五 个事件,开发者可根据需要定制操作。

在初始化 AuthingForm 后,可使用 on方法,如:

var form = new AuthingForm({ clientId: 'xxxx', secret: 'xxxxx'});

form.on('login', function(user){

// 成功登录后的回调事件,参数 user 为用户数据

});

完整的事件列表如下:

事件名称

事件说明

事件参数

事件参数说明

authingLoad

Authing Client ID 和 Secret验证通过,加载完成

authing

authing 对象,可直接操作 login,register等方法

authingUnload

Authing Client ID 和 Secret验证失败

error

错误信息

oauthLoad

OAuth列表加载完成

oauthList

完整的 OAuth 列表,若用户未在后台配置过则为空

oauthUnload

OAuth列表加载失败

error

错误信息

login

用户登录成功

user

用户数据

loginError

用户登录失败

error

错误信息,包含字段缺失/非法或服务器错误等信息

register

用户注册成功

user

用户数据

registerError

用户注册失败

error

错误信息,包含字段缺失/非法或服务器错误等信息

emailSent

忘记密码邮件发送成功

data

发送的结果

emailSentError

忘记密码邮件发送失败

error

错误信息

resetPassword

重置密码成功

data

重置密码结果

resetPasswordError

重置密码失败

error

错误信息

scanning

扫码登录成功

user

用户数据

scanningError

扫码登录失败

error

错误信息

scanningIntervalStarting

开始监听扫码事件

interval

用户可使用 clearInterval 停止监听

formClosed

Login Form 关闭事件

null

用户按下 ESC 或点击右上方的关闭按钮后会触发此事件

完整代码如下:

form.on('authingLoad', function (authing){

console.log('on authing load', authing);

});

form.on('authingUnload', function (error){

console.log('on authing load error', error);

});

form.on('oauthLoad', function (oauthList){

console.log('on oauth load', oauthList);

});

form.on('oauthUnload', function (error){

console.log('on oauth unload', error);

});

form.on('login', function (user){

console.log('on login', user);

});

form.on('loginError', function (error){

console.log('on login error', error);

});

form.on('register', function (user){

console.log('on register', user);

});

form.on('registerError', function (error){

console.log('on register error', error);

});

form.on('emailSent', function (data){

console.log('on email sent', data);

});

form.on('emailSentError', function (error){

console.log('on email sent error');

});

form.on('resetPassword', function (result){

console.log('on reset password');

});

form.on('resetPasswordError', function (error){

console.log('on reset password error', error);

});

form.on('scanning', function (data){

console.log('on scanning success', data);

});

form.on('scanningError', function (error){

console.log('on scanning error', error);

});

form.on('scanningIntervalStarting', function (interval){

console.log('on scanning interval starting', interval);

});

form.on('formClosed', function (){

console.log('on form closed');

});

html实现输入框扫码录入,使用这个工具,可以让你一行代码生成登录表单相关推荐

  1. js通过扫描枪快速扫码录入的功能实现(区分手动输入和扫码枪录入)-pc

    扫码录入实践 实践背景 需要解决的问题 代码实现 最终代码 结语 实践背景 在近期工作过程中接手了一个让我有些棘手的需求,需求如下: 输入框内支持扫码录入商品,且支持连续扫码录入. 相同输入框中支持手 ...

  2. 带小鱼游动动画的动态登录表单html页面前端源码

    大家好,今天给大家介绍一款,带小鱼游动动画的动态登录表单html页面前端源码(图1),送给大家哦,获取方式在本文末尾. 图1 有一条活灵活现的小鱼围着表单游动,给页面添加了许多生机(图2), 图2 源 ...

  3. 使用 HTML 和 CSS 的玻璃态登录表单(含免费完整源码)

    直接跳到末尾 获取完整源码 在本文中,我将带着大家展示如何使用 HTML 和 CSS 代码创建 玻璃态登录表单.你可以将任何简单的设计转换为玻璃态设计.为此,只需要更改一点代码.首先使用 backgr ...

  4. Web前端笔记-解决Vue编写的输入框(input、textarea等)使用JS设置value时提交表单无效的问题

    主要的原因是vue相当于套了一层,界面上的输入框会关联model,提交表单的时候,他是直接提交model的值,而不是传统的输入框里面的值. 所以用这种: let textAreaItem = docu ...

  5. html5表单扫码录入,Javascript判断扫码枪的输入,以及扫码后提交表单数据

    条码扫描器其实就是一种输入设备,跟键盘一样.在控制台打印扫描过程,可以看出,扫描过程就像是在键盘上敲击相应的键,keycode和键盘是一一对应的,只是输入速度(间隔时间)比物理键盘输入要快得多.我们可 ...

  6. android studio怎么改软件扫码界面_Android测试工具入门介绍(二)

    今天我们来讲讲一款牛逼的安卓集成工具:就是大名还算顶顶的AndroidKill: 先来个软件界面截图: 多么简单有华丽的界面啊!我说的是功能华丽,该有的功能他都有. 首先我们先点开菜单中的Androi ...

  7. 前端学习(1864)vue之电商管理系统电商系统之绘制登录表单区域带icon的输入框

    修改头像位置 3目录结构 router.js import Vue from 'vue' import Router from 'vue-router' import Login from './co ...

  8. 我和小美的撸码日记(3)之中的一个句话搞定MVC表单页数据绑定与提交

    另外献上在<线体验Demo地址>希望大家也能从中得到一些启示. 地址:http://121.40.148.178:8080/ . username:guest,password:12345 ...

  9. vue、dom、监听扫码枪 输入框与全屏获取扫码输入的结果 及 非扫码输入的结果 单输入框 多状态接口查询

    广为流传版本 的 new + 提供非扫码情况下的数据返回 function ScannerListener(resolve, event, reject) {this.event = event || ...

  10. 扫码盒获取微信支付宝付款码等信息的前端处理

    <Row class="left-middle"><Col span="24" ><Form ref="formAdd& ...

最新文章

  1. 经典数据结构和算法 双端队列 java
  2. 【前端学习日记】用reveal.js实现制作网页幻灯片
  3. Java8中使用以下类计算日期时间差:Period、Duration、ChronoUnit
  4. c++ builder xe2 debug正常 release崩溃 解决一例
  5. MySQL中使用外键约束的注意事项
  6. 爬虫-请求类对象的创建-Request类
  7. 面试官系统精讲Java源码及大厂真题 - 34 只求问倒:连环相扣系列锁面试题
  8. ExtJs4.1目录结构介绍和使用说明[转]
  9. python中ta_非常详细的Ta-Lib安装及使用教程
  10. 华为鸿蒙主题设计,2020华为全球主题设计大赛,简直就是神仙打架啊!
  11. 增值税发票综合服务平台常见问题解决方法(珍藏版)
  12. autojs通用拾色器
  13. 硬盘根目录里的Msdia80.dll文件
  14. 成都大数据培训前景:2020年大数据趋势
  15. vue:如何设计网页的微信扫码登录功能
  16. 必须使用javadoc形式的注释
  17. 阿弥陀佛么么哒 - 笔记
  18. OC5038内置 MOS 开关降压型 LED 恒流驱动器
  19. 算法设计与分析 SCAU17964 水桶打水
  20. 电脑在登陆界面如何打开计算机管理,电脑打不开路由器管理界面怎么解决

热门文章

  1. SQL必知必会习题练习
  2. 彻底解决Android GPS没法定位这一顽固问题
  3. 冒泡排序c语言程序,冒泡排序(C语言实现)
  4. ODBC安装及数据源配置
  5. Python学习路线汇总,必看
  6. 14道基础Python练习题(附答案)
  7. 基于双生视界的live2d提取与查看方法
  8. 常用SQL语句整理及示例
  9. 前端多人开发统一代码格式化工具
  10. python库下载(包括一些pip安装不成功的库下载)