ajAuth
来自于:开发者立即使用
论坛示例
为帮助用户更好更快的使用模块,论坛维护了一个示例,示例中包含示例代码、知识点讲解、注意事项等,供您参考。
概述
ajAuth 本模块封装了极光认证SDK,用于进行一键登录。注:本模块依赖于ajpush模块,需要与ajpush模块最新版本1.1.1及以上一起使用。
模块使用攻略
使用之前须从极光官网(https://www.jiguang.cn)申请开发者账号并创建应用,获取 appkey 和 secret。
需要配置 config.xml 文件,config.xml添加以下代码,需通过云端编译生效,配置方法如下:
配置示例:
<meta-data name="JPUSH_APPKEY" value="appkey"/>
<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
- 类型:JSON 对象
- 描述:(可选项)隐私协议
- 内部字段:
- {
- title: “xxx隐私服务协议”,
- url: “http://xxx.com/app/agreement.html”,//协议地址
- color:”#21ba86”//颜色
- }
callback(ret, err)
ret:
- 类型:JSON对象
- 内部字段:
{
cmd:"",//init初始化sdk,preLogin预取号;
code:7000 //预取号成功
result:'预取号成功'
}
err:
- 类型:JSON对象
- 内部字段:
{
code: 0 //数字类型;
//错误码:
//-1(未知错误),
//0(成功)
}
示例代码
var ajAuth = api.require('ajAuth');
var param = {
appKey:'your appKey',
phoneNum:{color: '#111000'},
loginTitle:{title: "本机号码登录",color: "#000222",bgColor: "#ff0000"},
oneKeylogin:{title: "一键登录",color: "#ffffff"},
appPrivacy:{title: "xx服务协议",url: "http://www.xxx.com/agreement.html",color:"#21ba86"}
};
ajAuth.init(param, function(ret, err){
console.log(JSON.stringify(ret));
if(ret.cmd=='preLogin'&&ret.code==7000){
ajAuth.loginAuth(function(ret2,err2){
if(ret2.cmd=="loginAuth"&&ret2.code==6000){
var token=ret2.result;
}
},)
}
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
loginAuth
打开授权页面
loginAuth()
callback(ret, err)
ret:
- 类型:JSON对象
- 内部字段:
{
cmd:"loginAuth",;
code:6000 //成功获取登录token
result:'获取到的loginToken'
}
err:
- 类型:JSON对象
- 内部字段:
{
code: 0 //数字类型;
//错误码:
//-1(未知错误),
//0(成功)
}
示例代码
var ajAuth = api.require('ajAuth');
ajAuth.loginAuth(function(ret,err){
if(ret.cmd=="loginAuth"&&ret.code==6000){
var token=ret.result;//获取到token之后根据极光文档进行后续工作,文档传送门:https://docs.jiguang.cn/jverification/server/rest_api/loginTokenVerify_api/
}
})
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
getToken
获取token
getToken()
callback(ret, err)
ret:
- 类型:JSON对象
- 内部字段:
{
cmd:"getToken",;
code:2000 //2000代表获取成功,其他为失败,详见错误码描述
result:'获取到的token'//获取到验证token
}
err:
- 类型:JSON对象
- 内部字段:
{
code: 0 //数字类型;
//错误码:
//-1(未知错误),
//0(成功)
}
示例代码
var ajAuth = api.require('ajAuth');
ajAuth.getToken(function(ret,err){
if(ret.cmd=="getToken"&&ret.code==2000){
var token=ret.result;//获取到token,手机号传到后台验证是否一致,文档传送门:https://docs.jiguang.cn/jverification/server/rest_api/verify_api/
}
})
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本