baiduLogin

来自于:开发者立即使用

概述

baiduLogin封装了百度的第三方登录功能。实现了授权、获取用户信息、注销等功能。

iOS版的有些流程和Android不同

  • iOS版的成功登录一次后,下次再点授权的话,就直接通过了,不用再点确认按钮。(这个很容易让人感觉注销没起作用的假象,实际上注销是生效了的,产生的token就变了。)

  • 如果用户点授权,没有输入帐号和密码,直接点了“取消”,iOS没有“用户取消登录”的提示,但安卓有。

配置

需要在config.xml里面添加百度应用id和api_key信息。

  <feature name="baiduLogin">
    <param name="id" value="9730894"/>
    <param name="api_key" value="8wf8bVvGyQ8X5FlNhZRLNnHofDOWTRLR"/>
  </feature>

申请应用AppKey

AppKey在百度开放平台申请,用于标识您的应用程序。地址为http://developer.baidu.com

修改redirect url地址(回调地址必须填写为bdconnect://success,不然会报错)

在应用管理->点击进入一个应用->左边菜单的安全设置->授权回调页 中填写以下地址:bdconnect://success

auth

登录授权(用于实现第三方登录)

注:iOS版的成功登录一次后,下次再点授权的话,就直接通过了,不用再点确认按钮。如果用户点授权,没有输入帐号和密码,直接点了“取消”,iOS没有“用户取消登录”的提示,但安卓有。

auth(callback(ret))

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true ,   //true成功,false失败
    msg : "",   //提示信息
    token : ""  //token信息
}

示例代码

var baiduLogin = api.require('baiduLogin');
baiduLogin.auth(function(ret){
    alert(JSON.stringify(ret));
});

可用性

Android、iOS系统

getUserInfo

获取用户信息(需要获取 token 成功)

getUserInfo(callback(ret));

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true ,   //true成功,false失败
    msg : "",   //提示信息
    userinfo : {
        uid : "123456" ,
        uname : "illusion" ,
        portrait : "dbaa78987sdfsdf"  //这个百度没说明,应该类似openid一样的用户标记吧。

    }
}

示例代码

var baiduLogin = api.require('baiduLogin');
baiduLogin.getUserInfo(function(ret){
    alert(JSON.stringify(ret));
});

可用性

Android、iOS系统

cancelAuth

登出当前账号

cancelAuth(callback(ret));

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true ,   //true成功,false失败
    msg : ""   //提示信息
}

示例代码

var baiduLogin = api.require('baiduLogin');
baiduLogin.cancelAuth(function(ret){
    alert(JSON.stringify(ret));
});

可用性

Android、iOS系统