Ejemplo n.º 1
0
Archivo: Curl.php Proyecto: evlsqd/curl
 /**
  * Prepares and sends HTTP requests.
  *
  * @param callable $callback
  */
 protected function makeRequest(callable $callback = null)
 {
     // Foreach request:
     foreach ($this->requests as $key => $request) {
         $data = (isset($this->data[$key]) and $this->data[$key] !== null) ? $this->data[$key] : null;
         // Follow any 3xx HTTP status code.
         $request->setOption(CURLOPT_FOLLOWLOCATION, true);
         switch ($this->verb) {
             case 'DELETE':
                 $this->prepareDeleteRequest($request);
                 break;
             case 'GET':
                 $this->prepareGetRequest($request);
                 break;
             case 'POST':
                 $this->preparePostRequest($request, $data);
                 break;
             case 'PUT':
                 $this->preparePutRequest($request, $data);
                 break;
         }
         // Add the request to the dispatcher.
         $this->dispatcher->add($request);
     }
     // Execute the request(s).
     if ($callback !== null) {
         $this->dispatcher->execute($callback);
     } else {
         $this->dispatcher->execute();
     }
 }
Ejemplo n.º 2
0
 /**
  * Setup and execute a HTTP request.
  *
  * @return void
  */
 protected function makeRequest()
 {
     // Foreach request:
     foreach ($this->requests as $key => $request) {
         if (isset($this->data[$key]) and $this->data[$key] !== null) {
             $data = http_build_query($this->data[$key]);
         } else {
             $data = null;
         }
         // Follow any 3xx HTTP status code.
         $request->setOption(CURLOPT_FOLLOWLOCATION, true);
         switch ($this->method) {
             case 'DELETE':
                 $this->prepareDeleteRequest($request);
                 break;
             case 'GET':
                 $this->prepareGetRequest($request);
                 break;
             case 'POST':
                 $this->preparePostRequest($request, $data);
                 break;
             case 'PUT':
                 $this->preparePutRequest($request, $data);
                 break;
         }
         // Add the request to the dispatcher.
         $this->dispatcher->add($request);
     }
     // Execute the request(s).
     $this->dispatcher->execute();
 }