Google官方支持的NodeJS访问API,提供后台登录授权

安装

此库通过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

(0)

相关推荐

  • node.js中使用q.js实现api的promise化

    关于啥是promise以及promise解决的是啥问题,敬请体验node的回调异步编码大法,顺带移步http://wiki.commonjs.org/wiki/Promises/A 看看是咋定义的,在此不再赘述. 这里我们看看怎么用q.js 实现node api的promise. 一.万事开始皆为install 复制代码 代码如下: npm install q 二.标准node style api 的promise化方法 1.使用Q.nfcall 相对于Q.fcall ,Q.nfcall 就是n

  • Node.js 服务器端应用开发框架 -- Hapi.js

    Hapi.js 是一个用来构建基于 Node.js 的应用和服务的富框架,使得开发者把重点放在便携可重用的应用逻辑而不是构建架构.内建输入验证.缓存.认证和其他 Web 应用开发常用的功能. 示例代码: var Hapi = require('hapi'); // Create a server with a host and port var server = new Hapi.Server('localhost', 8000); // Add the route server.route({

  • NodeJS实现阿里大鱼短信通知发送

    1.说明 阿里大鱼提供了验证码,短信通知,语音等服务,在使用后感觉挺方便,不愧是阿里旗下的产品. 最近想搞个NodeJS发送短信通知的功能,这里没有使用 alidayu-node (开始做的时候并不知道有这个.如果使用alidayu-node那就简单了.),自己整一个签名sign,实现短信发送. 官方的 文档 说明了签名 sign 的生成步骤,不过第三步骤: 3.连接字符串 连接参数名与参数值,并在首尾加上secret 有错误( 首尾加上secret 是错的) 2.代码实现 生成 sign /*

  • Node.js开源应用框架HapiJS介绍

    一.HapiJS介绍 HapiJS是一个开源的.基于Node.js的应用框架,它适用于构建应用程序和服务,其设计目标是让开发者把精力集中于开发可重用的应用程序的业务逻辑,向开发者提供构建应用程序业务逻辑所需的基础设施.HapiJS目前的最新版本为7.2.0版. 二.HapiJS安装和项目配置 1.安装Hapi库 HapiJS的安装很简单,执行如下命令: 复制代码 代码如下: $ sudo npm install hapi -g hapi@7.2.0 /usr/local/lib/node_mod

  • Google官方支持的NodeJS访问API,提供后台登录授权

    安装 此库通过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: 'h

  • NodeJS基础API搭建服务器详细过程记录

    前言 在习惯了使用express框架,jade模板引擎等现成工具来写代码之后,很多人对于基本的NodeJS API会慢慢生疏.本文将以一个超小型web项目,来详细介绍如何使用NodeJS基础的http, fs, path, url等模块提供的API来搭建一个简单的web服务器.当做对NodeJS的一次复习,也为初学NodeJS的开发者提供一个参考.本文所搭建的项目将不会使用express等后端框架,仅使用最基础的NodeJS API,按照MVC设计模式的思路进行编码和讲解,交流意见.源代码地址如

  • 用nodejs访问ActiveX对象,以操作Access数据库为例。

    起因 有人提问"如果用nodejs访问sql server?" 找了找资料,发现有两类解决方法,使用第三方nodejs插件:https://github.com/orenmazor/node-tds.使用ADODB.ConnectionActiveX对象. 参考: http://stackoverflow.com/questions/857670/how-to-connect-to-sql-server-database-from-javascript http://stackover

  • Nodejs访问网络并解析返回的json的实现方法

    目录 一:解析本地Json文件 二:访问网络 一:解析本地Json文件 sample.json { "api": "mtop.common.getTimestamp", "v": "*", "ret": [ "SUCCESS::接口调用成功" ], "data": { "t": "1647006040138" } } jsonP

  • IdnentiyServer使用客户端凭据访问API的实例代码

    情景如下:一个客户端要访问一个api,不需要用户登录,但是又不想直接暴露api给外部使用,这时可以使用identityserver添加访问权限. 客户端通过clientid和secrect访问identitserver的Token Endpoint,获取accesstoken: 接着客户端再使用accesstoken作为头部验证访问webapi.(webapi已经添加了identityserver的相关验证). 代码实现:其中 "http://localhost:5000"是ident

  • resty client使用Java客户端来访问Api

    目录 1.使用Resty-client客户端来验证Api的权限 2.使用client来执行表单请求 3.使用client来发送application/json数据请求 4.使用client来上传文件 5.使用client来下载文件,支持断点续传 1. 使用Resty-client客户端来验证Api的权限 当使用了登录参数,api访问403没有权限时,会先进行登录,以通过权限验证 //第一个为基础的api路径,第二个参数为登录api(http://127.0.0.1:8081/api/v1.0/s

  • IntelliJ Idea 2020.1 正式发布,官方支持中文(必看)

    1. 前言 今天 IntelliJ Idea 2020.1 正式发布了!最大的一个亮点莫过于开始支持中文了.相信很多英语不好的同学已经期盼已久了.但是感觉登录界面感觉变丑了!建议把文章看完再去升级. 2. 汉化体验 先来看看我的效果,首先要告诉你这是官方汉化包,并不是第三方! 我大致看了一圈,个别还没有汉化完毕,可能没有找到合适的描述词汇吧,但是绝大部分已经完成了. 这下很多同学可以更方便使用了.但是对于习惯了英文界面的同学来说,要小小的适应一下. 3. 如何开启中文汉化 看到上面的效果,相信有

  • springboot整合minio实现文件上传与下载且支持链接永久访问

    目录 1.minio部署 2.项目搭建 3.文件上传 4.文件下载 5.文件永久链接下载 1.minio部署 1.1 拉取镜像 docker pull minio/minio 1.2 创建数据目录 mkdir -p /home/guanz/minio mkdir -p /home/guanz/minio/midata 1.3 启动minio docker run -d -p 9000:9000 -p 9001:9001 --restart=always -e MINIO_ACCESS_KEY=g

  • 在vue中配置不同的代理同时访问不同的后台操作

    如果和不同的后台调接口,如果后台接口没有合到一起,前端可以配不同的代理来共同访问他们的接口 在config文件夹下的index.js中设置如下: proxyTable: { '/api/login': { // 第一个代理:此处的路径是所有接口前面相同的部分,用来匹配带有这部分路径的 target: "http://192.168.100.209:8910", changeOrigin: true, secure: false }, '/api/supplier': { // 设置第二

  • Yii2框架RESTful API 格式化响应,授权认证和速率限制三部分详解

    之前写过一篇Yii2框架制作RESTful风格的API快速入门教程,今天接着来探究一下Yii2 RESTful的格式化响应,授权认证和速率限制三个部分 一.目录结构 先列出需要改动的文件.目录如下: web ├─ common │ └─ models │ └ User.php └─ frontend ├─ config │ └ main.php └─ controllers └ BookController.php 二.格式化响应 Yii2 RESTful支持JSON和XML格式,如果想指定返回

随机推荐