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学习笔记之Connect中间件应用实例
Jan 27 NodeJs
iPhone手机上搭建nodejs服务器步骤方法
Jul 06 NodeJs
nodejs模块nodemailer基本使用-邮件发送示例(支持附件)
Mar 28 NodeJs
nodejs multer实现文件上传与下载
May 10 NodeJs
nodejs操作mongodb的填删改查模块的制作及引入实例
Jan 02 NodeJs
nodejs实现的连接MySQL数据库功能示例
Jan 25 NodeJs
nodejs基于express实现文件上传的方法
Mar 19 NodeJs
nodeJS服务器的创建和重新启动的实现方法
May 12 NodeJs
nodejs 如何手动实现服务器
Aug 20 NodeJs
NVM安装nodejs的方法实用步骤
Jan 16 NodeJs
NodeJs之word文件生成与解析的实现代码
Apr 01 NodeJs
通过实例了解Nodejs模块系统及require机制
Jul 16 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/04/18 PHP
让PHP更快的提供文件下载的代码
2012/06/13 PHP
PHP的文件操作与算法实现的面试题示例
2015/08/10 PHP
详解PHP编码转换函数应用技巧
2016/10/22 PHP
php实现留言板功能(会话控制)
2017/05/23 PHP
PHP用函数嵌入网站访问量计数器
2017/10/27 PHP
改进:论坛UBB代码自动插入方式
2006/12/22 Javascript
一个JS翻页效果
2007/07/23 Javascript
javaScript 关闭浏览器 (不弹出提示框)
2010/01/31 Javascript
关闭页面window.location事件未执行的原因及解决方法
2014/09/01 Javascript
javascript实现网页中涉及的简易运动(改变宽高、透明度、位置)
2015/11/29 Javascript
把多个JavaScript函数绑定到onload事件处理函数上的方法
2016/09/04 Javascript
详解webpack+ES6+Sass搭建多页面应用
2018/11/05 Javascript
Python ZipFile模块详解
2013/11/01 Python
python中的__init__ 、__new__、__call__小结
2014/04/25 Python
Python中optparse模块使用浅析
2015/01/01 Python
解决Shell执行python文件,传参空格引起的问题
2018/10/30 Python
Python实现微信消息防撤回功能的实例代码
2019/04/29 Python
python 基于TCP协议的套接字编程详解
2019/06/29 Python
Python算法的时间复杂度和空间复杂度(实例解析)
2019/11/19 Python
python getopt模块使用实例解析
2019/12/18 Python
pycharm sciview的图片另存为操作
2020/06/01 Python
HTML5 history新特性pushState、replaceState及两者的区别
2015/12/26 HTML / CSS
校长岗位职责
2013/11/26 职场文书
总经理秘书的岗位职责
2013/12/27 职场文书
高中运动会广播稿
2014/01/21 职场文书
人力资源专员岗位职责
2014/01/30 职场文书
乡镇三项教育实施方案
2014/03/30 职场文书
毕业留言寄语大全
2014/04/10 职场文书
做一个有道德的人演讲稿
2014/05/14 职场文书
“六查”、“三学”、“三干”查摆问题整改措施
2014/09/27 职场文书
执法作风整顿剖析材料
2014/10/11 职场文书
学习党的群众路线教育实践活动心得体会范文
2014/11/03 职场文书
房屋买卖协议样本
2014/11/16 职场文书
上班旷工检讨书
2015/08/15 职场文书
医院病假条范文
2015/08/17 职场文书