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实现黑名单中间件设计
Jun 17 NodeJs
nodejs实现的一个简单聊天室功能分享
Dec 06 NodeJs
nodejs URL模块操作URL相关方法介绍
Mar 03 NodeJs
nodejs中使用HTTP分块响应和定时器示例代码
Mar 19 NodeJs
使用 NodeJS+Express 开发服务端的简单介绍
Apr 07 NodeJs
nodejs个人博客开发第一步 准备工作
Apr 12 NodeJs
nodejs+mongodb+vue前后台配置ueditor的示例代码
Jan 02 NodeJs
nodejs使用http模块发送get与post请求的方法示例
Jan 08 NodeJs
nodejs基于WS模块实现WebSocket聊天功能的方法
Jan 12 NodeJs
详解NodeJS Https HSM双向认证实现
Mar 12 NodeJs
nodejs提示:cross-device link not permitted, rename错误的解决方法
Jun 10 NodeJs
搭建一个nodejs脚手架的方法步骤
Jun 28 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中通过虚代理实现延迟加载的实现代码
2011/06/10 PHP
php输入流php://input使用浅析
2014/09/02 PHP
javascript 网页跳转的方法
2008/12/24 Javascript
javascript function调用时的参数检测常用办法
2010/02/26 Javascript
javascript间隔定时器(延时定时器)学习 间隔调用和延时调用
2014/01/13 Javascript
Node.js返回JSONP详解
2016/05/18 Javascript
jquery插件格式实例分析
2016/06/16 Javascript
js中小数向上取整数,向下取整数,四舍五入取整数的实现(必看篇)
2017/02/13 Javascript
理解 javascript 中的函数表达式与函数声明
2017/07/07 Javascript
Angularjs中的验证input输入框只能输入数字和小数点的写法(推荐)
2017/08/16 Javascript
移动前端图片压缩上传的实例
2017/12/06 Javascript
浅谈vue方法内的方法使用this的问题
2018/09/15 Javascript
微信小程序module.exports模块化操作实例浅析
2018/12/20 Javascript
JavaScript中十种一步拷贝数组的方法实例详解
2019/04/22 Javascript
vue改变对象或数组时的刷新机制的方法总结
2019/04/24 Javascript
Vue实现回到顶部和底部动画效果
2019/07/31 Javascript
解决vue打包报错Unexpected token: punc的问题
2020/10/24 Javascript
python类继承用法实例分析
2015/05/27 Python
Python中的数据对象持久化存储模块pickle的使用示例
2016/03/03 Python
Python编程django实现同一个ip十分钟内只能注册一次
2017/11/03 Python
Django权限机制实现代码详解
2018/02/05 Python
解决tensorflow模型参数保存和加载的问题
2018/07/26 Python
记一次python 爬虫爬取深圳租房信息的过程及遇到的问题
2020/11/24 Python
Css3新特性应用之视觉效果实例
2016/12/12 HTML / CSS
英国最大的百货公司:Harrods
2016/08/18 全球购物
英国休闲奢华的缩影:Crew Clothing
2019/05/05 全球购物
意大利一家专营包包和配饰的网上商店:Borse Last Minute
2019/08/26 全球购物
JDO的含义
2012/11/17 面试题
幼儿园优秀教师事迹
2014/02/13 职场文书
公务员年度考核评语
2014/12/31 职场文书
2015关于重阳节的演讲稿
2015/03/20 职场文书
慈善募捐倡议书
2015/04/27 职场文书
遗失证明范文
2015/06/19 职场文书
校长新学期致辞
2015/07/30 职场文书
Python中tqdm的使用和例子
2022/09/23 Python