/**
  * Tries to detect the base URI of request.
  *
  * @return void
  */
 protected function detectBaseUri()
 {
     if ($this->baseUri === null) {
         $this->baseUri = clone $this->uri;
         $this->baseUri->setQuery(null);
         $this->baseUri->setFragment(null);
         $this->baseUri->setPath($this->getScriptRequestPath());
     }
 }
 /**
  * @param string $actionName
  * @param array $additionalParameters
  *
  * @return Uri
  */
 protected function buildRequestUri($actionName, array $additionalParameters = [])
 {
     $requestUri = new Uri($this->apiSettings['apiUrl']);
     $requestUri->setPath($requestUri->getPath() . $this->apiSettings['actions'][$actionName]);
     $requestUri->setQuery(http_build_query(array_merge($this->apiSettings['parameters'], $additionalParameters)));
     return $requestUri;
 }