Google官方支持的NodeJS访问API,提供后台登录授权


Posted in NodeJs onJuly 29, 2014

安装

此库通过npm发布。通过以下命令安装googleapis及其依赖

$ npm install googleapis

完整的API支持列表 https://developers.google.com/apis-explorer

使用

例1: 通过Google短地址获取完整地址

var google = require('googleapis');
 var urlshortener = google.urlshortener('v1');
 var params = { shortUrl: 'http://goo.gl/xKbRu3' };
 // get the long url of a shortened url
 urlshortener.url.get(params, function (err, response) {
  console.log('Long url is', response.longUrl);
 });

例2: 登录授权

此示例集成OAuth2认证,可以让你获取到用户的访问Token并刷新此Token防止会话过期。

  

var google = require('googleapis');
 var plus = google.plus('v1');
 var oauth2Client = new OAuth2(CLIENT_ID, CLIENT_SECRET, REDIRECT_URL);
 // Retrieve tokens via token exchange explained above or set them:
 oauth2Client.setCredentials({
  access_token: 'ACCESS TOKEN HERE',
  refresh_token: 'REFRESH TOKEN HERE'
 });
 plus.people.get({ userId: 'me', auth: oauth2Client }, function(err, response) {
  // handle err and response
 });

完整的登录授权示例。 https://github.com/google/google-api-nodejs-client/blob/master/examples/oauth2.js

例3: 文件上传

var fs = require('fs');
 var drive = google.drive({ version: 'v2', auth: oauth2Client });
 drive.files.insert({
  resource: {
  title: 'testimage.png',
  mimeType: 'image/png'
  },
  media: {
  mimeType: 'image/png',
  body: fs.createReadStream('awesome.png') // read streams are awesome!
  }
 }, callback);

问题解答?

如有任何问题可到 Stackoverflow 提问

如果发现漏洞可到GitHub上提交 Issue

NodeJs 相关文章推荐
nodejs 实现模拟form表单上传文件
Jul 14 NodeJs
抛弃Nginx使用nodejs做反向代理服务器
Jul 17 NodeJs
Google官方支持的NodeJS访问API,提供后台登录授权
Jul 29 NodeJs
nodejs命令行参数处理模块commander使用实例
Sep 17 NodeJs
Nodejs实战心得之eventproxy模块控制并发
Oct 27 NodeJs
Nodejs获取网络数据并生成Excel表格
Mar 31 NodeJs
Nodejs中使用captchapng模块生成图片验证码
May 18 NodeJs
NodeJs实现定时任务的示例代码
Dec 05 NodeJs
nodeJS服务器的创建和重新启动的实现方法
May 12 NodeJs
NodeJs 文件系统操作模块fs使用方法详解
Nov 26 NodeJs
nodejs npm错误Error:UNKNOWN:unknown error,mkdir 'D:\Develop\nodejs\node_global'at Error
Mar 02 NodeJs
nodejs一个简单的文件服务器的创建方法
Sep 13 NodeJs
使用nodejs、Python写的一个简易HTTP静态文件服务器
Jul 18 #NodeJs
抛弃Nginx使用nodejs做反向代理服务器
Jul 17 #NodeJs
nodejs的10个性能优化技巧
Jul 15 #NodeJs
提高NodeJS中SSL服务的性能
Jul 15 #NodeJs
在NodeJS中启用ECMAScript 6小结(windos以及Linux)
Jul 15 #NodeJs
nodejs 实现模拟form表单上传文件
Jul 14 #NodeJs
14款NodeJS Web框架推荐
Jul 11 #NodeJs
You might like
PHP 最大运行时间 max_execution_time修改方法
2010/03/08 PHP
TP5框架使用QueryList采集框架爬小说操作示例
2020/03/26 PHP
经验几则 推荐
2006/09/05 Javascript
如何快速的呈现我们的网页的技巧整理
2007/07/01 Javascript
关于js获取radio和select的属性并控制的代码
2011/05/12 Javascript
jQuery中text() val()和html()的区别实例详解
2016/06/28 Javascript
Vue.js动态添加、删除选题的实例代码
2016/09/30 Javascript
原生js图片轮播效果实现代码
2016/10/19 Javascript
windows下vue.js开发环境搭建教程
2017/03/20 Javascript
微信小程序中多个页面传参通信的学习与实践
2017/05/05 Javascript
基于angular-utils-ui-breadcrumbs使用心得(分享)
2017/11/03 Javascript
webpack+vue2构建vue项目骨架的方法
2018/01/09 Javascript
vue2.0+koa2+mongodb实现注册登录
2018/04/10 Javascript
Bootstrap Table实现定时刷新数据的方法
2018/08/13 Javascript
Vue 根据条件判断van-tab的显示方式
2020/08/03 Javascript
javascript中正则表达式语法详解
2020/08/07 Javascript
Python中的Classes和Metaclasses详解
2015/04/02 Python
利用Python脚本在Nginx和uwsgi上部署MoinMoin的教程
2015/05/05 Python
python 采集中文乱码问题的完美解决方法
2016/09/27 Python
Python实现抓取网页生成Excel文件的方法示例
2017/08/05 Python
Python微信库:itchat的用法详解
2017/08/14 Python
pandas.dataframe按行索引表达式选取方法
2018/10/30 Python
Python rstrip()方法实例详解
2018/11/11 Python
python ipset管理 增删白名单的方法
2019/01/14 Python
Django自定义模板过滤器和标签的实现方法
2019/08/21 Python
wxPython实现绘图小例子
2019/11/19 Python
Selenium向iframe富文本框输入内容过程图解
2020/04/10 Python
3分钟看懂Python后端必须知道的Django的信号机制
2020/07/26 Python
澳洲小众品牌的集合网站:BNKR
2018/02/23 全球购物
C++程序员求职信范文
2014/04/14 职场文书
婚前保证书
2014/04/29 职场文书
党的群众路线教育实践活动宣传标语口号
2014/06/06 职场文书
迎新生标语大全
2014/10/06 职场文书
2014年培训工作总结范文
2014/11/27 职场文书
优秀的商业计划书,让融资一步到位
2019/05/07 职场文书
详解python的内存分配机制
2021/05/10 Python