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 相关文章推荐
CentOS 安装NodeJS V8.0.0的方法
Jun 15 NodeJs
详解HTTPS 的原理和 NodeJS 的实现
Jul 04 NodeJs
详解nodejs的express如何自动生成项目框架
Jul 12 NodeJs
nodejs实现连接mongodb数据库的方法示例
Mar 15 NodeJs
NodeJS实现不可逆加密与密码密文保存的方法
Mar 16 NodeJs
Mac下通过brew安装指定版本的nodejs教程
May 17 NodeJs
nodejs遍历文件夹下并操作HTML/CSS/JS/PNG/JPG的方法
Nov 01 NodeJs
NodeJS模块与ES6模块系统语法及注意点详解
Jan 04 NodeJs
nodejs实现获取本地文件夹下图片信息功能示例
Jun 22 NodeJs
nodejs脚本centos开机启动实操方法
Mar 04 NodeJs
通过实例了解Nodejs模块系统及require机制
Jul 16 NodeJs
详解NodeJS模块化
Jun 15 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
一些操作和快捷键的理解和讨论
2020/03/04 星际争霸
PHP判断搜索引擎蜘蛛并自动记忆到文件的代码
2012/02/04 PHP
php的hash算法介绍
2014/02/13 PHP
php实现mysql封装类示例
2014/05/07 PHP
destoon实现首页显示供应、企业、资讯条数的方法
2014/07/15 PHP
2个Codeigniter文件批量上传控制器写法例子
2014/07/25 PHP
PHP 芝麻信用接入的注意事项
2016/12/01 PHP
js的event详解。
2006/09/06 Javascript
jQuery select控制插件
2009/08/17 Javascript
JavaScript 获取用户客户端操作系统版本
2009/08/25 Javascript
3种不同方式的焦点图轮播特效分享
2013/10/30 Javascript
javascript创建数组之联合数组的使用方法示例
2013/12/26 Javascript
nodeJS代码实现计算交社保是否合适
2015/03/09 NodeJs
angularjs客户端实现压缩图片文件并上传实例
2015/07/06 Javascript
简述jQuery ajax的执行顺序
2016/01/05 Javascript
AngularJS中directive指令使用之事件绑定与指令交互用法示例
2016/11/22 Javascript
浅析Vue项目中使用keep-Alive步骤
2018/07/27 Javascript
nodejs 生成和导出 word的实例代码
2018/07/31 NodeJs
浅谈微信页面入口文件被缓存解决方案
2018/09/29 Javascript
谈谈为什么你的 JavaScript 代码如此冗长
2019/01/30 Javascript
VUE路由动态加载实例代码讲解
2019/08/26 Javascript
Python urlopen()函数 示例分享
2014/06/12 Python
Python数据处理numpy.median的实例讲解
2018/04/02 Python
python实现统计代码行数的小工具
2019/09/19 Python
pytorch中的inference使用实例
2020/02/20 Python
django admin后管定制-显示字段的实例
2020/03/11 Python
详解移动端HTML5音频与视频问题及解决方案
2018/08/22 HTML / CSS
英国领先的汽车轮胎和快速健康中心:Kwik Fit
2017/10/29 全球购物
SheIn沙特阿拉伯:女装在线
2020/03/23 全球购物
读书心得体会
2013/12/28 职场文书
学生拾金不昧表扬信
2014/01/21 职场文书
积极向上的团队口号
2014/06/06 职场文书
党的群众路线教育实践活动剖析材料
2014/09/30 职场文书
2014年专项整治工作总结
2014/11/17 职场文书
师德标兵先进事迹材料
2014/12/19 职场文书
2016年6.5世界环境日宣传活动总结
2016/04/01 职场文书