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使用mysql模块之获得更新和删除影响的行数的方法
Mar 18 NodeJs
nodejs 提示‘xxx’ 不是内部或外部命令解决方法
Nov 20 NodeJs
基于html5和nodejs相结合实现websocket即使通讯
Nov 19 NodeJs
nodejs中全局变量的实例解析
Mar 07 NodeJs
NodeJs的fs读写删除移动监听
Apr 28 NodeJs
nodejs实现大文件(在线视频)的读取
Oct 16 NodeJs
nodejs爬虫初试superagent和cheerio
Mar 05 NodeJs
Nodejs处理异常操作示例
Dec 25 NodeJs
Nodejs中的require函数的具体使用方法
Apr 02 NodeJs
nodejs和react实现即时通讯简易聊天室功能
Aug 21 NodeJs
详解NodeJs项目 CentOs linux服务器线上部署
Sep 16 NodeJs
node快速搭建后台的实现步骤
Feb 18 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
CPU步进是什么意思?i3-9100F B0步进和U0步进区别知识科普
2020/03/17 数码科技
php中将数组转成字符串并保存到数据库中的函数代码
2013/09/29 PHP
ThinkPHP中create()方法自动验证实例
2017/04/26 PHP
phpStudy2016 配置多个域名期间遇到的问题小结
2017/10/19 PHP
PHP手机短信验证码实现流程详解
2018/05/17 PHP
Javascript SHA-1:Secure Hash Algorithm
2006/12/20 Javascript
Javascript 判断函数类型完美解决方案
2009/09/02 Javascript
写入cookie的JavaScript代码库 cookieLibrary.js
2009/10/24 Javascript
javascript oop开发滑动(slide)菜单控件
2010/08/25 Javascript
javascript延时加载之defer测试
2012/12/28 Javascript
基于jquery实现的可编辑下拉框实现代码
2014/08/02 Javascript
JavaScript实现数组在指定位置插入若干元素的方法
2015/04/06 Javascript
jQuery插件datatables使用教程
2016/04/21 Javascript
js不间断滚动的简单实现
2016/06/03 Javascript
js判断输入字符串是否为空、空格、null的方法总结
2016/06/14 Javascript
详解Javascript百度地图接口开发文档中的类和方法
2017/02/07 Javascript
Bootstrap FileInput实现图片上传功能
2021/01/28 Javascript
利用一个简单的例子窥探CPython内核的运行机制
2015/03/30 Python
Python遍历某目录下的所有文件夹与文件路径
2018/03/15 Python
python+pandas分析nginx日志的实例
2018/04/28 Python
Python实现读取txt文件中的数据并绘制出图形操作示例
2019/02/26 Python
Pycharm新建模板默认添加个人信息的实例
2019/07/15 Python
凯特·丝蓓英国官网:Kate Spade英国
2016/11/07 全球购物
c++工程师面试问题
2013/08/04 面试题
UNIX操作系统结构由哪几部分组成
2016/02/17 面试题
银行出纳岗位职责
2013/11/25 职场文书
经典广告词大全
2014/03/14 职场文书
大学生求职信例文
2014/06/29 职场文书
关于感恩的演讲稿800字
2014/08/26 职场文书
党建工作整改措施
2014/10/28 职场文书
2014年超市员工工作总结
2014/11/18 职场文书
2014年优秀党员材料
2014/12/18 职场文书
员工离职通知函
2015/04/25 职场文书
2019年自助餐厅创业计划书模板
2019/08/22 职场文书
pytorch DataLoader的num_workers参数与设置大小详解
2021/05/28 Python
Promise静态四兄弟实现示例详解
2022/07/07 Javascript