Example #1
0
<?php

/**
 * This program is free software. It comes without any warranty, to
 * the extent permitted by applicable law. You can redistribute it
 * and/or modify it under the terms of the Do What The F**k You Want
 * To Public License, Version 2, as published by Sam Hocevar. See
 * http://www.wtfpl.net/ for more details.
 *
 * Request example with url parametrization
 * @author alxmsl
 * @date 2/6/13
 */
// Firstly include base class
include '../source/Autoloader.php';
use alxmsl\Network\Http\Request;
// Create request object
$Request = new Request();
$Request->setUrl('https://www.googleapis.com/androidpublisher/v1/')->setConnectTimeout(3)->setTimeout(5);
// Setup transport
$Request->setTransport(Request::TRANSPORT_CURL);
// Set url data fields
$Request->addUrlField('applications', 'com.my.application')->addUrlField('subscriptions', 'com.my.application.subscription.1')->addUrlField('token', 'some access token');
// Send request
$data = $Request->send();
var_dump($data);
Example #2
0
 /**
  * Getter for the request
  * @param string $url request url
  * @return Request request object
  */
 protected function getRequest($url)
 {
     $Request = new Request();
     $Request->setTransport(Request::TRANSPORT_CURL);
     return $Request->setUrl($url)->setConnectTimeout($this->getConnectTimeout())->setTimeout($this->getRequestTimeout());
 }
Example #3
0
<?php

/**
 * This program is free software. It comes without any warranty, to
 * the extent permitted by applicable law. You can redistribute it
 * and/or modify it under the terms of the Do What The F**k You Want
 * To Public License, Version 2, as published by Sam Hocevar. See
 * http://www.wtfpl.net/ for more details.
 *
 * POST request example
 * @author alxmsl
 * @date 1/25/13
 */
// Firstly include base class
include '../source/Autoloader.php';
use alxmsl\Network\Http\Request;
// Create request object
$Request = new Request();
$Request->setUrl('http://api.topface.com')->setConnectTimeout(3)->setTimeout(5);
// Setup transport
$Request->setTransport(Request::TRANSPORT_CURL);
// Set POST data fields
$Request->addPostField('field1', 'value1');
$Request->addPostField('field2', 'value2');
// Send request
$data = $Request->send();
var_dump($data);
Example #4
0
 /**
  * Create request for method call
  * @param string $methodName API method name
  * @param array $parameters method call parameters
  * @return Request request object
  */
 private function getRequest($methodName, array $parameters = [])
 {
     $Request = new Request();
     $Request->setTransport(Request::TRANSPORT_CURL);
     $Request->setUrl(self::ENDPOINT_URI)->setConnectTimeout($this->getConnectTimeout())->setTimeout($this->getRequestTimeout())->addUrlField(sprintf('bot%s', $this->token), $methodName);
     if (!empty($parameters)) {
         $Request->setPostData($parameters);
     }
     return $Request;
 }
 /**
  * Getter for the request
  * @param string $url request url
  * @return Request request object
  */
 protected function getRequest($url)
 {
     $Request = new Request();
     $Request->setTransport(Request::TRANSPORT_CURL);
     return $Request->setUrl($url)->setConnectTimeout($this->getConnectTimeout())->setTimeout($this->getRequestTimeout())->setContentTypeCode(Request::CONTENT_TYPE_JSON);
 }
Example #6
0
 * This program is free software. It comes without any warranty, to
 * the extent permitted by applicable law. You can redistribute it
 * and/or modify it under the terms of the Do What The F**k You Want
 * To Public License, Version 2, as published by Sam Hocevar. See
 * http://www.wtfpl.net/ for more details.
 *
 * Request signification example
 * @author alxmsl
 * @date 3/30/13
 */
// Firstly include base class
include '../source/Autoloader.php';
use alxmsl\Network\Http\Request;
// Create request object
$Request = new Request();
$Request->setUrl('http://topface.com');
// Setup transport
$Request->setTransport(Request::TRANSPORT_CURL);
// Add request data
$Request->addGetField('a', 'value_a');
$Request->addGetField('b', 'value_b');
$Request->addPostField('c', 'value_c');
$Request->addPostField('d', 'value_d');
// Create custom request data signature
$sign = $Request->getSignature(function (Request $Request) {
    $sign = '';
    $get = $Request->getGetData();
    if (!empty($get)) {
        $sign = http_build_query($get);
    }
    $post = $Request->getPostData();
Example #7
0
 /**
  * Create HTTP request instance fr this API call
  * @return HttpRequest HTTP request instance
  */
 private function createRequest()
 {
     $HttpRequest = new HttpRequest();
     $HttpRequest->setTransport(HttpRequest::TRANSPORT_CURL);
     $HttpRequest->setUrl(self::ENDPOINT_URI)->setConnectTimeout(1)->setTimeout($this->timeout)->addUrlField($this->method)->setMethod(self::$methodMap[$this->method]);
     $this->appendParameters($HttpRequest);
     return $HttpRequest;
 }
Example #8
0
 /**
  * Create request method
  * @param Message $Message message instance
  * @return Request HTTP request instance
  */
 private function createRequest(Message $Message)
 {
     $Request = new Request();
     $Request->setTransport(Request::TRANSPORT_CURL);
     $Request->setUrl(self::ENDPOINT_URI)->setContentTypeCode(Request::CONTENT_TYPE_TEXT)->setConnectTimeout($this->getConnectTimeout())->setTimeout($this->getRequestTimeout());
     $data = array_merge(['user='******'from=' . $this->from, 'sign=' . $this->sign($Message)], $Message->export());
     $Request->setPostData(implode('&', $data));
     return $Request;
 }