基于Node.js的新浪微博的API封装:node-weibo

jopen 9年前

node-weibo v2.0 是对新浪微博的API的封装,基于Node.js,认证方式采用OAuth2.

相对node-weibo v2.0之前版本的特性有:
(1)更加易于后面的拓展,比如新增函数,不会影响旧版本的使用
(2)更加高效和管理,尊重微博API的设计原则。

安装

npm install nodeweibo

基于Node.js的新浪微博的API封装:node-weibo

一、API使用说明

(1)阅读新浪微博的API文档 http://open.weibo.com/wiki/%E5%BE%AE%E5%8D%9AAPI  (2)Weibo是整个命名空间,使用前请参考 examples/setting.json 创建/修改配置文件。

基于Node.js的新浪微博的API封装:node-weibo

(3)请求授权接口作为单独的接口,即在Weibo的命名空间下Weibo.authorize();  (4)浏览:http://open.weibo.com/wiki/%E5%BE%AE%E5%8D%9AAPI          如上图所示,是API的命名方式.     +---------     比如1:需要使用“OAuth2授权接口”,点击链接到页面底部,看到“OAuth2”,那么OAuth2就是一个类,                即Weibo.OAuth2.          则Weibo.OAuth2的获取access_token的方法是:Weibo.OAuth2.access_token;     则授权查询是:Weibo.OAuth2.get_token_info.     类:OAuth2     方法:access_token     +---------     比如2:需要使用“微博接口”,那么该类的名称是Statuses.     则返回最新的公共微博是:public_timeline.     整个方法的调用是Weibo.Statuses.public_timeline.     类:Statuses     方法:public_timeline     +---------       所有类和函数命名方式尊重新浪微博API方式,以此类推.  (5)所有方法两个参数,第一参数是该接口的参数(json对象格式,不含setting.json中的配置参数)

二、example说明

/*  +-------------------------------------------------  (1)注册账号:http://open.weibo.com/  (2)参考 examples/setting.json 创建/修改配置文件。  (3)搞清楚微博的认证机制即oauth2.0认证原理。  (4)第3点很重要,确保你理解这种开发方式。  +-------------------------------------------------  */    var Weibo = require('nodeweibo');  var setting = require('path/to/setting.json');    // 首次调用接口前需初始化Weibo类,传入配置信息 (appKey, appSecret, redirect_url, etc. )  Weibo.init(setting);    /*  +-------------------------------------------------  例1:开启微博认证  启动认证后,将在浏览器器打开一个窗口,url中含有code参数  注意:运行其中一个例子时,须注释掉另一个例子。  +-------------------------------------------------  */    Weibo.authorize();    /*  +--------------------------------------------------  例2:需要获取access_token  (1)阅读微博开放平台API     如:http://open.weibo.com/wiki/OAuth2/access_token,     将必要的参数写进jsonParas对象。  (2)在回调中打印出获取的数据  (3)code是您浏览器窗口获得的code。  (4)注意:如运行本例子,请注释掉第1个例子,且code职能调用一次,          会随着认证不断更新。一个用户一个access_token。  +---------------------------------------------------  */    var jsonParas = {      code:"the value of your browser's parameter code",      grant_type:"authorization_code"  };    Weibo.OAuth2.access_token(jsonParas,function(data){      console.log(data);  });    /*  +--------------------------------------------------  例3:调用API  (1)阅读微博开放平台API     如:http://open.weibo.com/wiki/2/statuses/user_timeline,     将必要的参数写进jsonParas对象。  (2)在回调中打印出获取的数据  +---------------------------------------------------  */    // 设置请求参数  var jsonParas = {      "source": Weibo.appKey.appKey,      "access_token": 'CLIENT_ACCESS_TOKEN_HERE'  };    // 调用API  Weibo.Statuses.user_timeline(jsonParas, function(data){      console.log(data);  });

三、测试appkey

(1)如需开发,请将setting.json的appKey、appSecret、redirectUrl换成微博开放平台的开发者账号信息。
(2)提供appkey仅为测试所用,勿用于实际开发,否则我更改了账号信息会影响您的应用正常使用。
(3)测试的应用信息如下。

{      "appKey":"4263807830",      "appSecret":"f314a703b2586510ae62a8baaef1570e",      "redirectUrl":"127.0.0.1:3000"  }

项目主页:http://www.open-open.com/lib/view/home/1435129703560