Giter VIP home page Giter VIP logo

picasa's Introduction

CI

Build Status

A simple Picasa Web Albums client (2.0) for nodejs. Includes Auth helpers.

Install

$ npm install --save picasa

Usage

(Check out the examples dir too, rename config.example.json > config.json and add your credentials)

const Picasa = require('picasa')

const picasa = new Picasa()

NOTE: Every Picasa API request requires an access token.

Photos

Get

const options = {     
  maxResults : 10 // by default get all
  albumId : "6338620891611370881" // by default all photos are selected
}

picasa.getPhotos(accessToken, options, (error, photos) => {
  console.log(error, photos)
})

Post

Where binary is the binary's file and the albumId the album id to be stored.

const photoData = {
  title       : 'A title',
  summary     : 'Summary or description',
  contentType : 'image/jpeg',             // image/bmp, image/gif, image/png
  binary      : binary
}

picasa.postPhoto(accessToken, albumId, photoData, (error, photo) => {
  console.log(error, photo)
})

Delete

picasa.deletePhoto(accessToken, albumId, photoId, (error) => {
  console.log(error)
})

Auth

To get an access token follow the next flow:

1.Get the Auth URL and redirect the user to it.

// Get config here API Manager > Credentials https://console.developers.google.com/home/dashboard
const config = {
  clientId     : 'yourClientId',
  redirectURI  : 'redirectURI'
}

const authURL = picasa.getAuthURL(config)

2.Google displays a consent screen to the user, asking them to authorize your application to request some of their data.

3.Google redirects a code to your redirectURI.

4.Use the code given as GET param in order to get an access token:

// Get config here API Manager > Credentials https://console.developers.google.com/home/dashboard
const config = {
  clientId     : 'yourClientId',
  redirectURI  : 'redirectURI'
  clientSecret : 'yourClientSecret'
}

picasa.getAccessToken(config, code, (error, accessToken) => {
  console.log(error, accessToken)
})

License

MIT ©


Play around https://developers.google.com/oauthplayground/?code=4/usq8QmuezR3Au_0UKyj9-UXmf6Bw_ij8KFWgIziYbpM#

Picasa Docs https://developers.google.com/picasa-web/docs/2.0/developers_guide_protocol

picasa's People

Contributors

grabya avatar esteban-uo avatar wreuven avatar z1c0 avatar

Watchers

James Cloos avatar

Forkers

jrodan

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.