ajAuth

来自于:开发者立即使用

init loginAuth getToken

论坛示例

为帮助用户更好更快的使用模块,论坛维护了一个示例,示例中包含示例代码、知识点讲解、注意事项等,供您参考。

概述

ajAuth 本模块封装了极光认证SDK,用于进行一键登录。注:本模块依赖于ajpush模块,需要与ajpush模块最新版本1.1.1及以上一起使用。

模块使用攻略

使用之前须从极光官网(https://www.jiguang.cn)申请开发者账号并创建应用,获取 appkey 和 secret。

需要配置 config.xml 文件,config.xml添加以下代码,需通过云端编译生效,配置方法如下:

配置示例:

  1. <meta-data name="JPUSH_APPKEY" value="appkey"/>
  2. <meta-data name="JPUSH_CHANNEL" value="authchannel"/>

init

预取号并设置授权页样式

init()

params

appKey

  • 类型:字符串
  • 描述:(必须)极光创建App时候得到的appkey。

phoneNum

  • 类型:JSON 对象
  • 描述:(可选项)电话号码显示的样式
  • 内部字段:
  • {
    • color: ‘#cccccc’, //号码显示的颜色
  • }

loginTitle

  • 类型:JSON 对象
  • 描述:(可选项)标题栏样式
  • 内部字段:
  • {
    • title: “本机号码登录”,//标题
    • color: “#000000”,//颜色
    • bgColor: “#ffffff”//背景颜色
  • }

oneKeylogin

  • 类型:JSON 对象
  • 描述:(可选项)一键登录按钮样式
  • 内部字段:
  • {
    • title: “本机号码登录”,//标题
    • color: “#000000”,//字体颜色
  • }

appPrivacy

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. cmd:"",//init初始化sdk,preLogin预取号;
  3. code:7000 //预取号成功
  4. result:'预取号成功'
  5. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. code: 0 //数字类型;
  3. //错误码:
  4. //-1(未知错误),
  5. //0(成功)
  6. }

示例代码

  1. var ajAuth = api.require('ajAuth');
  2. var param = {
  3. appKey:'your appKey',
  4. phoneNum:{color: '#111000'},
  5. loginTitle:{title: "本机号码登录",color: "#000222",bgColor: "#ff0000"},
  6. oneKeylogin:{title: "一键登录",color: "#ffffff"},
  7. appPrivacy:{title: "xx服务协议",url: "http://www.xxx.com/agreement.html",color:"#21ba86"}
  8. };
  9. ajAuth.init(param, function(ret, err){
  10. console.log(JSON.stringify(ret));
  11. if(ret.cmd=='preLogin'&&ret.code==7000){
  12. ajAuth.loginAuth(function(ret2,err2){
  13. if(ret2.cmd=="loginAuth"&&ret2.code==6000){
  14. var token=ret2.result;
  15. }
  16. },)
  17. }
  18. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

loginAuth

打开授权页面

loginAuth()

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. cmd:"loginAuth",;
  3. code:6000 //成功获取登录token
  4. result:'获取到的loginToken'
  5. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. code: 0 //数字类型;
  3. //错误码:
  4. //-1(未知错误),
  5. //0(成功)
  6. }

示例代码

  1. var ajAuth = api.require('ajAuth');
  2. ajAuth.loginAuth(function(ret,err){
  3. if(ret.cmd=="loginAuth"&&ret.code==6000){
  4. var token=ret.result;//获取到token之后根据极光文档进行后续工作,文档传送门:https://docs.jiguang.cn/jverification/server/rest_api/loginTokenVerify_api/
  5. }
  6. })

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

getToken

获取token

getToken()

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. cmd:"getToken",;
  3. code:2000 //2000代表获取成功,其他为失败,详见错误码描述
  4. result:'获取到的token'//获取到验证token
  5. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. code: 0 //数字类型;
  3. //错误码:
  4. //-1(未知错误),
  5. //0(成功)
  6. }

示例代码

  1. var ajAuth = api.require('ajAuth');
  2. ajAuth.getToken(function(ret,err){
  3. if(ret.cmd=="getToken"&&ret.code==2000){
  4. var token=ret.result;//获取到token,手机号传到后台验证是否一致,文档传送门:https://docs.jiguang.cn/jverification/server/rest_api/verify_api/
  5. }
  6. })

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本