public function testParamsCanBeReturnedAsArray()
 {
     $paramsOne = FacebookUrlManipulator::getParamsAsArray('/foo');
     $paramsTwo = FacebookUrlManipulator::getParamsAsArray('/foo?one=1&two=2');
     $paramsThree = FacebookUrlManipulator::getParamsAsArray('https://www.foo.com');
     $paramsFour = FacebookUrlManipulator::getParamsAsArray('https://www.foo.com/?');
     $paramsFive = FacebookUrlManipulator::getParamsAsArray('https://www.foo.com/?foo=bar');
     $this->assertEquals([], $paramsOne);
     $this->assertEquals(['one' => '1', 'two' => '2'], $paramsTwo);
     $this->assertEquals([], $paramsThree);
     $this->assertEquals([], $paramsFour);
     $this->assertEquals(['foo' => 'bar'], $paramsFive);
 }
Пример #2
0
 /**
  * Set the endpoint for this request.
  *
  * @param string
  *
  * @return FacebookRequest
  *
  * @throws FacebookSDKException
  */
 public function setEndpoint($endpoint)
 {
     // Harvest the access token from the endpoint to keep things in sync
     $params = FacebookUrlManipulator::getParamsAsArray($endpoint);
     if (isset($params['access_token'])) {
         $this->setAccessTokenFromParams($params['access_token']);
     }
     // Clean the token & app secret proof from the endpoint.
     $filterParams = ['access_token', 'appsecret_proof'];
     $this->endpoint = FacebookUrlManipulator::removeParamsFromUrl($endpoint, $filterParams);
     return $this;
 }