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服务器(7):阻塞操作的实现
Dec 18 NodeJs
nodejs个人博客开发第二步 入口文件
Apr 12 NodeJs
nodejs后台集成ueditor富文本编辑器的实例
Jul 11 NodeJs
详解Nodejs 通过 fs.createWriteStream 保存文件
Oct 10 NodeJs
nodejs+mongodb+vue前后台配置ueditor的示例代码
Jan 02 NodeJs
Nodejs连接mysql并实现增、删、改、查操作的方法详解
Jan 04 NodeJs
解决Nodejs全局安装模块后找不到命令的问题
May 15 NodeJs
NodeJS搭建HTTP服务器的实现步骤
Oct 12 NodeJs
Nodejs 识别图片类型的方法
Aug 15 NodeJs
详解利用nodejs对本地json文件进行增删改查
Sep 20 NodeJs
NodeJS http模块用法示例【创建web服务器/客户端】
Nov 05 NodeJs
NodeJS模块Buffer原理及使用方法解析
Nov 11 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编程中字符串处理的5个技巧小结
2007/11/13 PHP
基于在生产环境中使用php性能测试工具xhprof的详解
2013/06/03 PHP
php数据库备份还原类分享
2014/03/20 PHP
javascript编程起步(第四课)
2007/01/10 Javascript
javascript 冒号 使用说明
2009/06/06 Javascript
分享8款优秀的 jQuery 加载动画和进度条插件
2012/10/24 Javascript
JS保留两位小数,多位小数的示例代码
2014/01/07 Javascript
浅谈js中变量初始化
2015/02/03 Javascript
浅谈使用MVC模式进行JavaScript程序开发
2015/11/10 Javascript
[原创]Bootstrap 中下拉菜单修改成鼠标悬停直接显示
2016/04/14 Javascript
JavaScript的Backbone.js框架入门学习指引
2016/05/07 Javascript
JS判断字符串变量是否含有某个字串的实现方法
2016/06/03 Javascript
JS实现图文并茂的tab选项卡效果示例【附demo源码下载】
2016/09/21 Javascript
详解javascript获取url信息的常见方法
2016/12/19 Javascript
Bootstrap进度条学习使用
2017/02/09 Javascript
Angular限制input框输入金额(是小数的话只保留两位小数点)
2017/07/13 Javascript
VUE实现一个分页组件的示例
2017/09/13 Javascript
Vue实现导出excel表格功能
2018/03/30 Javascript
jQuery中each遍历的三种方法实例分析
2018/09/07 jQuery
详解ES6 Promise对象then方法链式调用
2018/10/20 Javascript
微信小程序中如何使用flyio封装网络请求
2019/07/03 Javascript
jQuery列表动态增加和删除的实现方法
2020/11/05 jQuery
微信小程序实现多张图片上传功能
2020/11/18 Javascript
Python3读取zip文件信息的方法
2015/05/22 Python
python中zip()方法应用实例分析
2016/04/16 Python
python实践项目之监控当前联网状态详情
2019/05/23 Python
python 根据网易云歌曲的ID 直接下载歌曲的实例
2019/08/24 Python
Python Opencv提取图片中某种颜色组成的图形的方法
2019/09/19 Python
win10环境下配置vscode python开发环境的教程详解
2019/10/16 Python
Pytorch使用PIL和Numpy将单张图片转为Pytorch张量方式
2020/05/25 Python
Python+unittest+requests 接口自动化测试框架搭建教程
2020/10/09 Python
美国羊皮公司:Overland
2018/01/15 全球购物
请描述一下”is a”关系和”has a”关系
2015/02/03 面试题
英语师范专业毕业生自荐信
2013/09/21 职场文书
预备党员转正党小组意见
2015/06/01 职场文书
创业计划书之韩国烧烤店
2019/09/19 职场文书