/**
  * Returns the user_id if available.
  *
  * @return string|null
  */
 public function getUserId()
 {
     return $this->signedRequest ? $this->signedRequest->getUserId() : null;
 }
 public function testARawSignedRequestCanBeInjectedIntoTheConstructorToInstantiateANewEntity()
 {
     $signedRequest = new SignedRequest($this->rawSignedRequest, 'foo_state', $this->appSecret);
     $rawSignedRequest = $signedRequest->getRawSignedRequest();
     $payloadData = $signedRequest->getPayload();
     $userId = $signedRequest->getUserId();
     $hasOAuthData = $signedRequest->hasOAuthData();
     $this->assertInstanceOf('\\Facebook\\Entities\\SignedRequest', $signedRequest);
     $this->assertEquals($this->rawSignedRequest, $rawSignedRequest);
     $this->assertEquals($this->payloadData, $payloadData);
     $this->assertEquals(123, $userId);
     $this->assertTrue($hasOAuthData);
 }
Example #3
0
 /**
  * newSessionAfterValidation - Returns a FacebookSession for a
  *   validated & parsed signed request.
  *
  * @param SignedRequest $signedRequest
  *
  * @return FacebookSession
  */
 protected static function newSessionAfterValidation(SignedRequest $signedRequest)
 {
     $code = $signedRequest->get('code');
     $accessToken = AccessToken::getAccessTokenFromCode($code);
     return new static($accessToken, $signedRequest);
 }
 /**
  * newSessionAfterValidation - Returns a FacebookSession for a
  *   validated & parsed signed request.
  *
  * @param SignedRequest $signedRequest
  *
  * @return FacebookSession
  *
  * @throws FacebookRequestException
  */
 protected static function newSessionAfterValidation(SignedRequest $signedRequest)
 {
     $params = array('client_id' => self::$defaultAppId, 'redirect_uri' => '', 'client_secret' => self::$defaultAppSecret, 'code' => $signedRequest->get('code'));
     $response = (new FacebookRequest(self::newAppSession(), 'GET', '/oauth/access_token', $params))->execute()->getResponse();
     if (isset($response['access_token'])) {
         return new static($response['access_token'], $signedRequest);
     }
     throw FacebookRequestException::create(json_encode($signedRequest->getRawSignedRequest()), $signedRequest->getPayload(), 401);
 }