当前位置: 首页>>代码示例>>PHP>>正文


PHP Facebook::get方法代码示例

本文整理汇总了PHP中Facebook::get方法的典型用法代码示例。如果您正苦于以下问题:PHP Facebook::get方法的具体用法?PHP Facebook::get怎么用?PHP Facebook::get使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Facebook的用法示例。


在下文中一共展示了Facebook::get方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: get_fb_permissions

 /**
  * Retrieves granted permissions.
  *
  * @param string $access_token The user access token.
  * @since 0.5
  */
 public function get_fb_permissions($access_token)
 {
     $permissions = array();
     if (isset($this->fb_sdk) && $access_token) {
         try {
             $permissions_query = $this->fb_sdk->get('/me/permissions', $access_token);
             $decoded_permissions = $permissions_query->getDecodedBody();
             if (isset($decoded_permissions['data'])) {
                 foreach ($decoded_permissions['data'] as $permission) {
                     if ('granted' === $permission['status']) {
                         $permissions[$permission['permission']] = 'granted';
                     }
                 }
             }
         } catch (Facebook\Exceptions\FacebookResponseException $e) {
             // When Graph returns an error.
             Logger::getLogger('instantarticles-wp-plugin')->error('Graph returned an error: ' . $e->getMessage(), $e->getTraceAsString());
         } catch (Facebook\Exceptions\FacebookSDKException $e) {
             // When validation fails or other local issues.
             Logger::getLogger('instantarticles-wp-plugin')->error('Facebook SDK returned an error: ' . $e->getMessage(), $e->getTraceAsString());
         }
     }
     if (isset($permissions)) {
         // Logged in.
         return $permissions;
     }
 }
开发者ID:ActiveWebsite,项目名称:BoojPressPlugins,代码行数:33,代码来源:class-instant-articles-settings-fb-page.php

示例2: postLogin

 public function postLogin()
 {
     if (\Input::get('fb_access_token')) {
         \Facebook::setDefaultAccessToken(\Input::get('fb_access_token'));
         try {
             $response = \Facebook::get('/me?fields=id');
             $fbUserId = $response->getGraphUser()->getProperty('id');
             $fbUser = FbUser::firstOrNew(['fb_user_id' => $fbUserId]);
             if ($fbUser->save()) {
                 \Session::put('fb_user_id', $fbUserId);
                 return \Response::json(['success' => true]);
             }
         } catch (\Facebook\Exceptions\FacebookSDKException $e) {
             return \Response::json(['success' => false, 'errors' => [$e->getMessage()]]);
         }
     }
     return \Response::json(['success' => false]);
 }
开发者ID:nekonekonik,项目名称:nuswhispers,代码行数:18,代码来源:FbUsersController.php

示例3: fire

 /**
  * Execute the console command.
  *
  * @return mixed
  */
 public function fire()
 {
     // Get the latest 250 facebook posts and record likes/comments
     $facebookRequest = sprintf('/%s/feed?limit=250&oauth_token=%s&fields=comments.limit(1).summary(true),likes.limit(1).summary(true)', env('FACEBOOK_PAGE_ID', ''), \Config::get('laravel-facebook-sdk.facebook_config.page_access_token'));
     $facebookResponse = \Facebook::get($facebookRequest)->getDecodedBody();
     foreach ($facebookResponse['data'] as $facebookPost) {
         $facebookPostId = explode('_', $facebookPost['id'])[1];
         // get facebook post id
         $confession = Confession::where('fb_post_id', '=', $facebookPostId)->first();
         // get confession associated with fb post
         if ($confession) {
             $confession->fb_like_count = $facebookPost['likes']['summary']['total_count'];
             $confession->fb_comment_count = $facebookPost['comments']['summary']['total_count'];
             $confession->save();
         }
     }
     $this->info('Facebook Information Updated!');
 }
开发者ID:nekonekonik,项目名称:nuswhispers,代码行数:23,代码来源:UpdateConfessionFacebookInfo.php

示例4: addProfile

 /**
  * TODO: Refactor to somewehere better; somewhere like a UserRepository.
  * @param string $provider  provider name
  * @param \App\Models\User user model
  * @param \Laravel\Socialite\Two\User $oauthUser oAuth user object
  */
 protected function addProfile($provider, $user, $oauthUser)
 {
     $pageToken = $oauthUser->token;
     $token = $oauthUser->token;
     if ($provider == 'facebook') {
         // Extend current token to long-lived access token
         $response = \Facebook::get('/oauth/access_token?client_id=' . urlencode(env('FACEBOOK_APP_ID')) . '&client_secret=' . urlencode(env('FACEBOOK_APP_SECRET')) . '&grant_type=fb_exchange_token&fb_exchange_token=' . urlencode($oauthUser->token));
         if (!isset($response->getDecodedBody()['access_token'])) {
             throw new \Exception('User is not a page admin of Facebook page #' . env('FACEBOOK_PAGE_ID', '') . '.');
         }
         $token = $response->getDecodedBody()['access_token'];
         // Get page token (never expires)
         try {
             $response = \Facebook::get('/' . env('FACEBOOK_PAGE_ID', '') . '?fields=access_token', $token)->getGraphObject();
         } catch (\Facebook\Exceptions\FacebookResponseException $e) {
             throw new \Exception('User is not a page admin of Facebook page #' . env('FACEBOOK_PAGE_ID', '') . '.');
         }
         $pageToken = $response['access_token'];
     }
     $user->profiles()->save(new UserProfile(['provider_id' => $oauthUser->id, 'provider_name' => $provider, 'provider_token' => $oauthUser->token, 'page_token' => $pageToken, 'data' => json_encode($oauthUser->user)]));
 }
开发者ID:nekonekonik,项目名称:nuswhispers,代码行数:27,代码来源:ProfileController.php

示例5: catch

}
if (isset($accessToken)) {
    if (isset($_SESSION['facebook_access_token'])) {
        $fb->setDefaultAccessToken($_SESSION['facebook_access_token']);
    } else {
        $_SESSION['facebook_access_token'] = (string) $accessToken;
        // OAuth 2.0 client handler
        $oAuth2Client = $fb->getOAuth2Client();
        // Exchanges a short-lived access token for a long-lived one
        $longLivedAccessToken = $oAuth2Client->getLongLivedAccessToken($_SESSION['facebook_access_token']);
        $_SESSION['facebook_access_token'] = (string) $longLivedAccessToken;
        $fb->setDefaultAccessToken($_SESSION['facebook_access_token']);
    }
    // validating the access token
    try {
        $request = $fb->get('/me');
    } catch (Facebook\Exceptions\FacebookResponseException $e) {
        // When Graph returns an error
        if ($e->getCode() == 190) {
            unset($_SESSION['facebook_access_token']);
            $helper = $fb->getRedirectLoginHelper();
            $loginUrl = $helper->getLoginUrl('https://apps.facebook.com/APP_NAMESPACE/', $permissions);
            echo "<script>window.top.location.href='" . $loginUrl . "'</script>";
            exit;
        }
    } catch (Facebook\Exceptions\FacebookSDKException $e) {
        // When validation fails or other local issues
        echo 'Facebook SDK returned an error: ' . $e->getMessage();
        exit;
    }
    // getting basic info about user
开发者ID:seniorramirez,项目名称:oggun,代码行数:31,代码来源:facebook.php

示例6: __get

 /**
  * Fetch connected grapobjects and store in the property.
  *
  * @param string $property
  * @return mixed
  */
 function __get($property)
 {
     if (empty($this->id)) {
         return parent::__get($property);
     }
     $connections = $this->getKnownConnections();
     if (array_key_exists($property, $connections) === false) {
         // not a (known) connection?
         if ($this->_state === 'id_only') {
             $fields = Facebook::get($this->id, $this->_apiParameters);
             $this->__set($fields);
             $this->_state = 'ready';
             unset($this->_apiParameters);
             if (array_key_exists($property, $fields)) {
                 return $fields[$property];
             }
         }
         if ($this->_state === 'partial') {
             $fields = Facebook::get($this->id);
             $this->__set($fields);
             $this->_state = 'ready';
             if (array_key_exists($property, $fields)) {
                 return $fields[$property];
             }
         }
         $fields = get_public_vars(get_class($this));
         if (array_key_exists($property, $fields)) {
             // is the field defined in the class?
             $permissions = static::getFieldPermissions(array('id' => $this->id));
             if (isset($permissions[$property]) && $permissions[$property] !== 'denied' && in_array($permissions[$property], Facebook::getInstance()->getPermissions()) === false) {
                 notice('Field "' . $property . '" requires the "' . $permissions[$property] . '" permission', 'Current permissions: ' . quoted_human_implode(' and ', Facebook::getInstance()->getPermissions()));
             }
             return parent::__get($property);
         }
     }
     try {
         // Retrieve a connection
         if (isset($connections[$property]['class'])) {
             $parameters = array('fields' => call_user_func(array($connections[$property]['class'], 'getAllowedFields')));
         } else {
             $parameters = array();
         }
         $method = 'get' . ucfirst($property);
         $this->__set(array($property => $this->{$method}($parameters)));
         return $this->{$property};
     } catch (\Exception $e) {
         report_exception($e);
         return parent::__get($property);
     }
 }
开发者ID:sledgehammer,项目名称:facebook,代码行数:56,代码来源:GraphObject.php


注:本文中的Facebook::get方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。