Skip to content
JavaScript
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
demo Reorganize file Apr 25, 2019
src Fix typo in README Aug 31, 2019
.gitignore Initial commit Aug 1, 2018
LICENSE Add license, mimfied F7 css and change to arrow Aug 7, 2018
README.md Fix typo in README Aug 31, 2019
package.json

README.md

Facebook API JavaScript SDK get all Albums and Photos

A simple demo of how to use the Facebook API with the JavaScript SDK to get all of your albums and photos. Luckily the Cordova Facebook plugin is pretty similar to it also.

A full writeup can be found here https://websitebeaver.com/facebook-api-javascript-sdk-get-all-albums-and-photos, along with a demo video.

Install

NPM

npm install facebook-javascript-all-photos

Import

import FbAllPhotos from 'facebook-javascript-all-photos';

Git

git clone https://github.com/WebsiteBeaver/facebook-javascript-all-photos.git

Import

import FbAllPhotos from 'facebook-javascript-all-photos/src/fb-code.js';

How to Use?

Firstly, you must get approved by approved by Facebook to use user_photos permissions.

Once you're aproved, you just need to change the appId property on FB.init(), which is located in index.html.

FB.init({
  appId            : ENTER APP ID HERE,
  autoLogAppEvents : true,
  xfbml            : true,
  version          : 'v3.0'
});

FbAllPhotos

Class to simplify getting all Facebook albums and photos and albums using Facebook API.

Kind: global class
Properties

Name Type Description
fullObj object Full object of Facebook albums, photos and pagination.
errorObj object Facebook-specific error object.
profilePictureURL string Facebook profile picture URL.

new FbAllPhotos()

Create empty object.

Example

const fbAllPhotos = new FbAllPhotos();

fbAllPhotos.getProfilePicture()

Get Facebook profile picture.

Kind: instance method of FbAllPhotos
Fulfil: string - The url of the Facebook profile picture.
Reject: Error - Rejected promise with message.
Example

fbAllPhotos.getProfilePicture()
  .then(profilePictureURL => { console.log(profilePictureURL); })
  .catch(errorMsg => {
    if(errorMsg === 'fbError') {
      console.log(fbAllPhotos.errorObj.message);
    } else if(errorMsg === 'noProfilePicture') {
      console.log('No profile picture');
    }
  });

fbAllPhotos.getAlbums([limitAlbums])

Get Facebook albums.

Kind: instance method of FbAllPhotos
Fulfil: object - The full Facebook albums and photos object.
Reject: Error - Rejected promise with message.

Param Type Default Description
[limitAlbums] int 25 The number of albums to retrieve.

Example

fbAllPhotos.getAlbums(15)
  .then(fullObj => { console.log(fullObj); })
  .catch(errorMsg => {
    if(errorMsg === 'fbError') {
      console.log(fbAllPhotos.errorObj.message);
    } else if(errorMsg === 'noAlbums') {
      console.log('No albums');
    }
  });

fbAllPhotos.getPhotosInAlbum(albumId, [limitPhotos])

Get Facebook photos in a specified album.

Kind: instance method of FbAllPhotos
Fulfil: object - Object with only specified album and its photos.
Reject: Error - Rejected promise with message.

Param Type Default Description
albumId int The album id to get photos from.
[limitPhotos] int 25 The number of photos in an album to retrieve.

Example

const albumId = 8395830308572754;

fbAllPhotos.getPhotosInAlbum(albumId, 15)
  .then(albumObj => { console.log(albumObj); })
  .catch(errorMsg => {
    if(errorMsg === 'fbError') {
      console.log(fbAllPhotos.errorObj.message);
    } else if(errorMsg === 'noAlbum') {
      console.log('Album does not exist');
    } else if(errorMsg === 'noPhotos') {
      console.log('No photos in album');
    }
  });

fbAllPhotos.getMoreAlbums()

Get more Facebook albums.

Kind: instance method of FbAllPhotos
Fulfil: object - The full Facebook albums and photos object.
Reject: Error - Rejected promise with message.
Example

fbAllPhotos.getMoreAlbums()
  .then(fullObj => { console.log(fullObj); })
  .catch(errorMsg => {
    if(errorMsg === 'fbError') {
      console.log(fbAllPhotos.errorObj.message); //Error message from Facebook
    } else if(errorMsg === 'serverError') {
      console.log(fbAllPhotos.errorObj); //Fetch API response object
    } else if(errorMsg === 'noMore') {
      console.log('No more albums to retrieve');
    }
  });

fbAllPhotos.getMorePhotosInAlbum(albumId)

Get more Facebook photos in a specified album.

Kind: instance method of FbAllPhotos
Fulfil: object - Object with only specified album and its photos.
Reject: Error - Rejected promise with message.

Param Type Description
albumId int The album id to get more photos from.

Example

const albumId = 8395830308572754;

fbAllPhotos.getMorePhotosInAlbum(albumId)
  .then(albumObj => { console.log(albumObj); })
  .catch(errorMsg => {
    if(errorMsg === 'fbError') {
      console.log(fbAllPhotos.errorObj.message); //Error message from Facebook
    } else if(errorMsg === 'serverError') {
      console.log(fbAllPhotos.errorObj); //Fetch API response object
    } else if(errorMsg === 'noAlbum') {
      console.log('Album does not exist');
    } else if(errorMsg === 'noMore') {
      console.log('No more photos in album to retrieve');
    }
  });
You can’t perform that action at this time.