Twitter OAuth 1 0 https github comabrahamtwitteroauth Redirect
Twitter OAuth 1. 0 → https: //github. com/abraham/twitteroauth → Redirect. php Consumer key + secret Access key + secret SHA 1 + Base 64
Twitter — API объекты Statuses, Direct messages Users, Friends, Followers Lists, Subscribers Friendships Geo places Trends
Twitter - Псевдокод require_once('twitteroauth/twitteroauth. php'); require_once('twitter_oauth/config. php'); $connection = new Twitter. OAuth( $a. Sync. Account[‘consumer_key'], $a. Sync. Account[‘consumer_secret'], $a. Sync. Account[‘access_key'], $a. Sync. Account[‘access_secret']); $user = $connection->get('account/verify_credentials'); $arr. Posts = $connection->get('statuses/user_timeline');
Facebook – объекты User (*), Page (*) Status Friends Likes ← Post Note Photo Video Link Album (Photos, Picture) Event (Feed, Users, Picture) Group (Feed, Members, Picture) Application Subscription Insights Checkin → Comments
Facebook – новое приложение Получаем Consumer key (App ID + secret) http: //developers. facebook. com/setup/
Facebook + серверное приложение • Oauth 2. 0 без подписей, но на SSL • Перенаправляем с client_id, redirect_uri, scope = offline_access https: //graph. facebook. com/oauth/authorize • Пользователь подтверждает привилегии • Возвращается с code параметром, обмениваем на access_key 134790075639751|ad 22 e 11 d 67 b 06933774 e 26 da 712393972|D 8 Po. APDdvv 8 on. IAf_Casljj. K 7 Pk
Facebook - Псевдокод if(!$token){ if($_REQUEST['code']){ $token = file_get_contents( 'https: //graph. facebook. com/oauth/access_token? client_id='. CONSUMER_KEY. '&clie nt_secret='. CONSUMER_SECRET. '&code='. $_REQUEST['code']. '&redirect_uri='. CONSUM ER_URL); } else header('Location: https: //graph. facebook. com/oauth/authorize? client_id='. CONSUMER_KEY. '&scope=of fline_access, create_event, publish_stream, user_events&redirect_uri='. CONSUMER_U RL); } Дальше можно использовать Graph. API через PHP SDK или просто читать JSON https: //github. com/facebook/php-sdk/
Facebook + Javascript • “Graph. API” • Javascript c FB глобальным объектом • • FB. init() FB. login() + FB. logout() FB. get. Login. Status() FB. api()
Facebook — впечатления • Пароли временные • Нельзя прочитать друзей X пользователя без разрешения даже если пользователь разрешил видеть всем #604 error: Сan't lookup all friends of XXXXXX. Can only lookup for the logged in user (XXXXXX), or friends of the logged in user with the appropriate permission
Вконтакте - объекты Friends Wall Photos Audio, Video Places Offers Questions Notes Pages
Вконтакте - псевдокод // старый по логин-паролю $vkontakte = new vkuserapi ($a. Sync. Account['login'], $a. Sync. Account[‘password']); $vkontakte->call ('set_activity', array('ts'=>time(), 'text'=> $str. Message)); // новая через ID приложения $VK = new vkapi($api_id, $secret_key); $resp = $VK->api('get. Profiles', array('uids'=>'1, 2'));
Linked. IN – объекты Person (Company, Education, Recommendation, Position) Connection Share Invitation
Linked. IN – псевдокод c PEAR require_once 'HTTP/OAuth. php‘; require_once 'HTTP/OAuth/Consumer/Request. php'; require_once 'HTTP/Request 2. php‘; require_once 'HTTP/OAuth/Consumer. php'; $o. Request = new HTTP_Request 2; $o. Request->set. Header('Accept-Encoding', '. *'); $o. Request->set. Config('ssl_verify_peer', false); $o. Request->set. Config('ssl_verify_host', false); $o. Auth. Request = new HTTP_OAuth_Consumer_Request; $o. Auth. Request->accept($o. Request); $o. Consumer = new HTTP_OAuth_Consumer( $a. Sync. Account['consumer_key'], $a. Sync. Account['consumer_secret'], $a. Sync. Account['access_token_secret'] ); $o. Consumer->accept($o. Auth. Request); $o. Response = $consumer->send. Request(' http: //api. linkedin. com/v 1/people-search : (people: (id, first -name, last-name, headline, location, industry, distance, public-profile-url, pictureurl, positions, educations), num-results)? keywords='. rawurlencode('Артём Курапов'), array(), 'GET'); $o. Xml = simplexml_load_string($o. Response->get. Body());
Одноклассники - объекты Users, Friends Photos Events Messages
Одноклассники • • API появилась ~ в октябре 2010 Action. Script, Java. Script, REST API SSL auth. login + auth. login. By. Token – цель не уловил
- Slides: 32