Transcript
Page 1: Social Sharing using OAuth2.0 and OAuth1.0

Social Share

Page 2: Social Sharing using OAuth2.0 and OAuth1.0

Objective

To study system that enable us to

• fetch user Info from social website

• share content on user’s account after authorization from him.

• Get long term access to user’s account for sharing content using cron without asking for his permission every time .

Social Share

Page 3: Social Sharing using OAuth2.0 and OAuth1.0

ArchitectureUser authorizes system once to

share content on behalf of him

Save Access Token

Share Content

Social Share

Page 4: Social Sharing using OAuth2.0 and OAuth1.0

Functionalities ProvidedSocial Share

Page 5: Social Sharing using OAuth2.0 and OAuth1.0

Class StructureSocial Share

Page 6: Social Sharing using OAuth2.0 and OAuth1.0

Sequence flow: Fetch User InfoSocial Share

Page 7: Social Sharing using OAuth2.0 and OAuth1.0

Sequence Flow : Share ContentSocial Share

Page 8: Social Sharing using OAuth2.0 and OAuth1.0

Sample Code• Get Authorization Uri: For OAuth 2.0

• Get Authorization Uri: For OAuth 1.0(twitter)

• Fetch User Info

$linkedInInstance= AutoSharing::getLinkedInInstance(APP_ID, APP_SECRET); $linkedInAutherizationUrl=$linkedInInstance->getAuthorizeUrl(REDIRECT_URL);

$twitterInstance= AutoSharing::getTwitterInstance(APP_ID, APP_SECRET); $requestToken=$twitterInstance->getRequestToken(REDIRECT_URL); $_SESSION["twitterOAuthToken"] = $requestToken['oauth_token'];$_SESSION["twitterOAuthSecret"] = $requestToken[‘oauth_token_secret'];

$twitterAutherizationUrl=$twitterInstance->getTwitterAuthorizationUrl( $ requestToken['oauth_token'],$ requestToken['oauth_token_secret']);

Social Share

Page 9: Social Sharing using OAuth2.0 and OAuth1.0

Contd..

• Fetch User Info: For OAuth 2.0

• Fetch User Info: For OAuth 1.0

$socialInstance= AutoSharing::getTwitterInstance(APP_ID, APP_SECRET); $socialInstance->setOAuthToken ($_SESSION["twitterOAuthToken“] );$socialInstance->setOAuthSecret($_SESSION ["twitterOAuthSecret“]); $accessToken=$socialInstance->getAccessToken($authorizationCode, REDIRECT_URL); $userProfileArr=$socialInstance->getUserInfo($accessToken);

$linkedInInstance= AutoSharing::getLinkedInInstance(APP_ID, APP_SECRET); $linkedInAutherizationUrl=$linkedInInstance->getAuthorizeUrl(REDIRECT_URL);

Social Share

Page 10: Social Sharing using OAuth2.0 and OAuth1.0

Contd..

• Share Job

NOTE:OAuth2.0 : Facebook, LinkedInOAuth1.0 : Twitter

$socialInstance= AutoSharing::getLinkedInInstance(APP_ID, APP_SECRET);$updateId= $socialInstance-> shareUrl($accessToken,$updateUrl);

Social Share

Page 11: Social Sharing using OAuth2.0 and OAuth1.0

Why use this?

• Simple and Easy to Integrate

• No need to look out for API of different social network , hence save time.

• Common exceptional handling

• Easily extendible and use for other social platforms.

Social Share

Page 12: Social Sharing using OAuth2.0 and OAuth1.0

THANKS

Social Share


Recommended