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); }
/** * Returns the signed request payload. * * @return null|array */ public function getSignedRequestData() { return $this->signedRequest ? $this->signedRequest->getPayload() : null; }
/** * 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); }