示例代码
1.在HEAD头引用入(需要你申请的id)
<script src="http://tjs.sjs.sinajs.cn/open/api/js/wb.js?appkey=" type="text/javascript" charset="utf-8"></script>
2.在需要部署微博发布器的位置粘贴JS代码
WB2.anyWhere(function (W) {
W.widget.connectButton({
id: "wb_connect_btn",
type: '3,2',
callback: {
login: function (o) { //登录后的回调函数
alert("login: " + o.screen_name)
},
logout: function () { //退出后的回调函数
alert('logout');
}
}
});
});
3.登录按钮
<div id="wb_connect_btn" ></div>
参数说明
参数说明名称 | 类型 | 默认值 | 是否必选 | 描述 |
---|---|---|---|---|
id | String | 无 | 是 | 连接按钮元素ID |
type | String | 3,2 | 否 | 连接按钮样式,是登录前的按钮样式1-7和登录后的样式1-5的组合,可选,默认为"3,2"。 |
callback | Function | 无 | 否 | 回调函数对象,参数说明如下,login: 登录后执行的回调函数,其参数为用户信息json对象;logout: 退出登录后执行的回调函数; |
login: 登录后执行的回调函数,其参数为用户信息json对象;
logout: 退出登录后执行的回调函数;|
常用API
WB2.login(callback)
登录回调
WB2.login(function() {
//callback function
});
参数说明
WB2.logout(callback)
退出回调
WB2.logout(function() {
//callback function});
参数说明
WB2.checkLogin()
检测微博登录状态
var status = WB2.checkLogin();
alert(status);
参数说明
WB2.anyWhere(callback)
第三方与微博API进行数据交互及采用Js方式调用内置微博组件的入口函数
WB2.anyWhere( function(W){
//数据交互
W.parseCMD(...);
//调用微博组件
W.widget.hoverCard(...);
W.widget.followButton(...);
...
});
参数说明
W.parseCMD(uri, callback, args, opts)
发送数据请求
WB2.anyWhere( function(W){
//数据交互
W.parseCMD('/users/show.json', function(oResult, bStatus) {
if(bStatus) {
//to do something...
}
}, {
screen_name : '姚晨'
}, {
method : 'get',
cache_time : 30
});
});
参数说明
获取uid案例
// 弹出登入窗口
WB2.login(function(){
// 验证是否登入成功
if(WB2.checkLogin()){
// api 入口
WB2.anyWhere(function(W){
// 调用 account/get_uid 接口,获取用户信息
W.parseCMD('/account/get_uid.json', function(oResult, bStatus){
if(bStatus){
// 本地验证 uid 是否存在,如果存在则自动登入绑定账户,不存在则不做任何操作
$.ajax({
type: 'POST',
url: 'index.ajax.php',
data: 'ac=checkReg&uid='+oResult.uid+'&type=1',
success: function(msg){
if(msg == 1){
// 已登入,刷新页面
location.reload();
}else{
// 未绑定账号,进行绑定或者注册
// do something
}
}
});
}
}, {}, {
method : 'get',
cache_time : 30
});
});
}
});