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 的 c++ module 链接到 OpenSSL
Aug 03 NodeJs
nodejs中简单实现Javascript Promise机制的实例
Dec 06 NodeJs
Nodejs实现的一个静态服务器实例
Dec 06 NodeJs
PHP和NodeJs开发的应用如何共用Session
Apr 16 NodeJs
浅析nodejs实现Websocket的数据接收与发送
Nov 19 NodeJs
Ajax异步文件上传与NodeJS express服务端处理
Apr 01 NodeJs
nodejs async异步常用函数总结(推荐)
Nov 17 NodeJs
nodejs 日志模块winston的使用方法
May 02 NodeJs
Nodejs调用Dll模块的方法
Sep 17 NodeJs
使用nodejs实现JSON文件自动转Excel的工具(推荐)
Jun 24 NodeJs
Nodejs实现微信分账的示例代码
Jan 19 NodeJs
Nodejs 微信小程序消息推送的实现
Jan 20 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文本操作类
2006/11/25 PHP
PHP中date()日期函数有关参数整理
2011/07/19 PHP
与文件上传有关的php配置参数总结
2013/06/14 PHP
php+mysql+jquery实现简易的检索自动补全提示功能
2017/04/15 PHP
安装PHP扩展时解压官方 tgz 文件后没有configure文件无法进行配置编译的问题
2020/08/26 PHP
Mootools 1.2教程 选项卡效果(Tabs)
2009/09/15 Javascript
JavaScript中的闭包原理分析
2010/03/08 Javascript
对 lightbox JS 图片控件进行了一下改造, 使其他支持复杂的图片说明
2010/03/20 Javascript
使用jquery中height()方法获取各种高度大全
2014/04/02 Javascript
js中运算符&& 和 || 的使用记录
2014/08/21 Javascript
jQuery中slidedown与slideup方法用法示例
2016/09/16 Javascript
正则中的回溯定义与用法分析【JS与java实现】
2016/12/27 Javascript
JavaScript实现二分查找实例代码
2017/02/22 Javascript
xmlplus组件设计系列之树(Tree)(9)
2017/05/02 Javascript
Vue调试神器vue-devtools安装方法
2017/12/12 Javascript
ES6 Promise对象的含义和基本用法分析
2019/06/14 Javascript
JS实现transform实现扇子效果
2020/01/17 Javascript
vue在线动态切换主题色方案
2020/03/26 Javascript
vue组件开发之tab切换组件使用详解
2020/08/21 Javascript
详解Python中的多线程编程
2015/04/09 Python
Python中dict和set的用法讲解
2019/03/28 Python
python hough变换检测直线的实现方法
2019/07/12 Python
Python Flask框架实现简单加法工具过程解析
2020/06/03 Python
总结30个CSS3选择器
2017/04/13 HTML / CSS
英国音乐设备和乐器商店:Gear4music
2017/10/16 全球购物
德国价格合理的品牌商品购物网站:averdo
2019/03/21 全球购物
Levi’s西班牙官方网站:李维斯,著名的牛仔裤品牌
2020/08/20 全球购物
英国奢侈品在线精品店:Hervia
2020/09/03 全球购物
中学生期末评语
2014/02/03 职场文书
上班玩手机检讨书
2014/02/17 职场文书
竞选演讲稿范文大全
2014/05/12 职场文书
社会发展项目建议书
2014/08/25 职场文书
群众路线领导干部个人对照检查材料(集锦)
2014/09/23 职场文书
商场营业员岗位职责
2015/04/14 职场文书
Python按顺序遍历并读取文件夹中文件
2022/04/29 Python
openEuler 搭建java开发环境的详细过程
2022/06/10 Servers