当前位置: 首页>>代码示例>>PHP>>正文


PHP HTTP_Request2::setBody方法代码示例

本文整理汇总了PHP中HTTP_Request2::setBody方法的典型用法代码示例。如果您正苦于以下问题:PHP HTTP_Request2::setBody方法的具体用法?PHP HTTP_Request2::setBody怎么用?PHP HTTP_Request2::setBody使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在HTTP_Request2的用法示例。


在下文中一共展示了HTTP_Request2::setBody方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: http2_request

 private function http2_request($method, $path, $params)
 {
     $url = $this->api . rtrim($path, '/') . '/';
     if (!strcmp($method, "POST")) {
         $req = new HTTP_Request2($url, HTTP_Request2::METHOD_POST);
         $req->setHeader('Content-type: application/json');
         if ($params) {
             $req->setBody(json_encode($params));
         }
     } else {
         if (!strcmp($method, "GET")) {
             $req = new HTTP_Request2($url, HTTP_Request2::METHOD_GET);
             $url = $req->getUrl();
             $url->setQueryVariables($params);
         } else {
             if (!strcmp($method, "DELETE")) {
                 $req = new HTTP_Request2($url, HTTP_Request2::METHOD_DELETE);
                 $url = $req->getUrl();
                 $url->setQueryVariables($params);
             }
         }
     }
     $req->setAdapter('curl');
     $req->setConfig(array('timeout' => 30, 'ssl_verify_peer' => FALSE));
     $req->setAuth($this->auth_id, $this->auth_token, HTTP_Request2::AUTH_BASIC);
     $req->setHeader(array('Connection' => 'close', 'User-Agent' => 'PHPPlivo'));
     $r = $req->send();
     $status = $r->getStatus();
     $body = $r->getbody();
     $response = json_decode($body, true);
     return array("status" => $status, "response" => $response);
 }
开发者ID:popas,项目名称:plivo,代码行数:32,代码来源:plivo.php

示例2: OXreqPUTforSendMail

 public function OXreqPUTforSendMail($url, $QueryVariables, $PutData, $returnResponseObject = false)
 {
     $QueryVariables['timezone'] = 'UTC';
     # all times are UTC,
     $request = new HTTP_Request2(OX_SERVER . $url, HTTP_Request2::METHOD_PUT);
     $request->setHeader('Content-type: text/javascript; charset=utf-8');
     $url = $request->getUrl();
     $url->setQueryVariables($QueryVariables);
     $request->setBody(utf8_encode($PutData));
     return $this->OXreq($request, $returnResponseObject);
 }
开发者ID:aniesshsethh,项目名称:z-push-ox,代码行数:11,代码来源:OXConnector.php

示例3: makeRequest

 /**
  * Make an API request.
  *
  * @param string $url    The URL to request agains.
  * @param string $method The request method.
  * @param mixed  $data   Optional, most likely a json encoded string.
  *
  * @return HTTP_Request2_Response
  * @throws HTTP_Request2_Exception In case something goes wrong. ;)
  */
 protected function makeRequest($url, $method = HTTP_Request2::METHOD_GET, $data = null)
 {
     if ($this->apiToken !== null) {
         $url .= '?u=' . $this->apiToken;
     }
     if (!$this->client instanceof HTTP_Request2) {
         $this->client = new HTTP_Request2();
     }
     $this->client->setHeader('Content-Type: application/json')->setAuth($this->username, $this->password)->setMethod($method)->setUrl($this->endpoint . $url);
     if ($data !== null) {
         $this->client->setBody($data);
     }
     $resp = $this->client->send();
     return $resp;
 }
开发者ID:hypertiny,项目名称:Services_UseKetchup,代码行数:25,代码来源:Common.php

示例4: postArticle

 /**
  * 記事を投稿する.
  *
  * @param string $title 記事タイトル
  * @param string $text 記事本文
  * @param string $category 記事カテゴリ
  * @return string $res 結果
  */
 public function postArticle($title, $text, $category)
 {
     try {
         $req = new HTTP_Request2();
         $req->setUrl(self::ROOT_END_POINT . $this->liveDoorId . "/" . self::END_POINT_TYPE_ARTICLE);
         $req->setConfig(array('ssl_verify_host' => false, 'ssl_verify_peer' => false));
         $req->setMethod(HTTP_Request2::METHOD_POST);
         $req->setAuth($this->liveDoorId, $this->atomPubPassword);
         $req->setBody($this->createBody($title, $text, $category));
         $req->setHeader('Expect', '');
         $res = $req->send();
     } catch (HTTP_Request2_Exception $e) {
         die($e->getMessage());
     } catch (Exception $e) {
         die($e->getMessage());
     }
     return $res;
 }
开发者ID:seiyaan,项目名称:LiveDoorBlogAtomPub,代码行数:26,代码来源:LiveDoorBlogAtomPub.php

示例5: update

 function update($acct, Link $link, Link $newlink)
 {
     $request = new HTTP_Request2($this->url, HTTP_Request2::METHOD_PUT);
     $request->setHeader($this->headers);
     $query = $link->toArray();
     $query['acct'] = $acct;
     $request->getUrl()->setQueryVariables($query);
     $request->setBody($newlink->toTag());
     try {
         $response = $request->send();
         if (200 == $response->getStatus()) {
             return $response->getBody();
         } else {
             echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' . $response->getReasonPhrase();
             return null;
         }
     } catch (HTTP_Request2_Exception $e) {
         echo 'Error: ' . $e->getMessage();
     }
 }
开发者ID:OExchange,项目名称:www.oexchange.org,代码行数:20,代码来源:xrdpclient.php

示例6: http2_request

 private function http2_request($method, $path, $params)
 {
     $url = $this->api . $path;
     $http_method = \HTTP_Request2::METHOD_POST;
     if (!strcmp($method, "GET")) {
         $http_method = \HTTP_Request2::METHOD_GET;
     } else {
         if (!strcmp($method, "DELETE")) {
             $http_method = \HTTP_Request2::METHOD_DELETE;
         }
     }
     $req = new \HTTP_Request2($url, $http_method);
     if ($http_method === \HTTP_Request2::METHOD_POST && $params) {
         $req->setBody(json_encode($params));
     }
     $req->setAdapter('curl');
     $req->setConfig(array('timeout' => 30, 'ssl_verify_peer' => FALSE));
     $req->setHeader(array('Authorization' => $this->auth_token, 'Connection' => 'close', 'User-Agent' => 'CheckMobi/http2_request', 'Content-type' => 'application/json'));
     $r = $req->send();
     $status = $r->getStatus();
     $body = $r->getbody();
     $response = json_decode($body, true);
     return array("status" => $status, "response" => $response);
 }
开发者ID:tao592,项目名称:checkmobi-php,代码行数:24,代码来源:CheckMobiRest.php

示例7: _getResponse

 public function _getResponse(S3 $s3, $url, $headers, $amz)
 {
     $req = new HTTP_Request2($url, $this->verb);
     if (!$s3->useSSLValidation) {
         $req->setConfig('ssl_verify_host', false);
         $req->setConfig('ssl_verify_peer', false);
     }
     if ($s3->proxy != null && isset($s3->proxy['host'])) {
         $req->setConfig('proxy_host');
         $req->setConfig('proxy_host', $s3->proxy['host']);
         if (isset($s3->proxy['user'], $s3->proxy['pass']) && $proxy['user'] != null && $proxy['pass'] != null) {
             $req->setConfig('proxy_user', $s3->proxy['user']);
             $req->setConfig('proxy_password', $s3->proxy['pass']);
         }
     }
     if ($s3->hasAuth()) {
         // Authorization string (CloudFront stringToSign should only contain a date)
         $headers[] = 'Authorization: ' . $s3->__getSignature($this->headers['Host'] == 'cloudfront.amazonaws.com' ? $this->headers['Date'] : $this->verb . "\n" . $this->headers['Content-MD5'] . "\n" . $this->headers['Content-Type'] . "\n" . $this->headers['Date'] . $amz . "\n" . $this->resource);
     }
     $req->setHeader($headers);
     $req->setConfig('follow_redirects', true);
     // Request types
     switch ($this->verb) {
         case 'GET':
             break;
         case 'PUT':
         case 'POST':
             // POST only used for CloudFront
             if ($this->fp !== false) {
                 $req->setBody($this->fp);
             } elseif ($this->data !== false) {
                 $req->setBody($this->data);
             }
             break;
     }
     try {
         $res = $req->send();
     } catch (HTTP_Request2_Exception $e) {
         $this->response->error = array('code' => $e->getCode(), 'message' => $e->getMessage(), 'resource' => $this->resource);
     }
     $this->response->code = $res->getStatus();
     $this->response->body = $res->getBody();
     $this->response->headers = $this->modHeaders($res->getHeader());
     return $this->response;
 }
开发者ID:subashemphasize,项目名称:test_site,代码行数:45,代码来源:S3.php

示例8:

*/
//openssl smime -sign -signer certnew_Vaan.cer -nochain -nocerts -outform PEM -nodetach
//openssl.exe smime -sign -signer public.pem -inkey private.pem -nochain -nocerts -outform PEM -nodetach
$request = new HTTP_Request2($url);
//$request->setMethod(HTTP_Request2::METHOD_POST);
/*
$request->setConfig(array(
    'ssl_verify_peer'   => FALSE,
    'ssl_verify_host'   => FALSE
    
    //'ssl_verify_peer' => TRUE,
    //'ssl_local_cert' => 'ym.p7b'
));
*/
$request->setHeader($parts[0]);
$request->setBody($parts[1]);
//$request->addUpload($url, $headers_msg, $sendFilename, $contentType);
//$request->s
//$request->getHeaders();
$response = $request->send();
var_dump($response->getStatus());
/*
$request->setMethod(HTTP_Request2::METHOD_POST)
    ->addPostParameter('username', 'vassily')
    ->addPostParameter(array(
        'email' => 'vassily.pupkin@mail.ru',
        'phone' => '+7 (495) 123-45-67'
    ))
    ->addUpload('avatar', './exploit.exe', 'me_and_my_cat.jpg', 'image/jpeg');
*/
//$test = new COM();
开发者ID:kapai69,项目名称:fl-ru-damp,代码行数:31,代码来源:ym.php

示例9: elseif

    // リクエスト作成
    $request = new HTTP_Request2();
    $request->setHeader($header);
    $request->setUrl($url);
    if ($method == 'GET') {
        $request->setMethod(HTTP_Request2::METHOD_GET);
    } elseif ($method == 'POST') {
        $request->setMethod(HTTP_Request2::METHOD_POST);
    } elseif ($method == 'PUT') {
        $request->setMethod(HTTP_Request2::METHOD_PUT);
    } elseif ($method == 'DELETE') {
        $request->setMethod(HTTP_Request2::METHOD_DELETE);
    } else {
        die;
    }
    $request->setBody(trim($body));
    $request->setConfig(array('ssl_verify_host' => false, 'ssl_verify_peer' => false));
    // レスポンス取得
    $response = $request->send();
    // HTTP_Request2のエラーを表示
} catch (HTTP_Request2_Exception $e) {
    die($e->getMessage());
    // それ以外のエラーを表示
} catch (Exception $e) {
    die($e->getMessage());
}
// エラー時
if ($response->getStatus() != "200") {
    echo "{";
    echo sprintf("\"httpStatus\":\"%s\"", $response->getStatus());
    echo ",";
开发者ID:sada-nishio,项目名称:kintone_http_client,代码行数:31,代码来源:request.php

示例10: date

}
// @see http://xpoint.ru/forums/programming/PHP/faq.xhtml#740
if (!empty($GLOBALS['HTTP_RAW_POST_DATA'])) {
    $body = $GLOBALS['HTTP_RAW_POST_DATA'];
    if ($Config['Log-Mode'] >= 2 && $Config['Log-Path']) {
        for ($i = 1; $i <= 200; ++$i) {
            $fname = date('Ymd-His') . '-I-' . $i . '.html';
            if (!file_exists($fname)) {
                $fp = fopen($Config['Log-Path'] . '/' . $fname, 'w');
                fwrite($fp, $body);
                fclose($fp);
                break;
            }
        }
    }
    $request->setBody($body);
}
$resp = $request->send();
$headers = $resp->getHeader();
if ($Config['Log-Mode']) {
    $log[] = '--------------------------';
    $log[] = '<<||<< ' . date('Y-m-d H:i:s');
    $log[] = '--------------------------';
    foreach ($headers as $name => $value) {
        $log[] = $name . ': ' . $value;
    }
}
$headers = exclude($headers, $Config['Head-Out-Exclude']);
foreach ($headers as $name => $value) {
    header("{$name}: {$value}");
}
开发者ID:kapai69,项目名称:fl-ru-damp,代码行数:31,代码来源:alphaclick.php

示例11: sendToCouchDb

 /**
  * Send data to CouchDB. This function dies on HTTP error and also if no
  * config.ini is found.
  *
  * @param array  $data  The object/document.
  * @param string $file  The filename of the log currently being crunched.
  * @param int    $count Which line are we at?
  *
  * @return void
  * @uses   \HTTP_Request2
  */
 public static function sendToCouchDb(array $data, $file, $count)
 {
     static $config;
     if ($config === null) {
         $config = parse_ini_file(self::$base . '/config.ini', true);
         if ($config === false) {
             echo "Couldn't read config.ini.";
             exit(1);
         }
     }
     static $req;
     if ($req === null) {
         require_once 'HTTP/Request2.php';
         $req = new \HTTP_Request2();
         $req->setAuth($config['couchdb']['user'], $config['couchdb']['pass']);
         $req->setMethod(\HTTP_Request2::METHOD_PUT);
     }
     $obj = (object) $data;
     $id = md5($obj->line);
     // generate _id
     try {
         $req->setUrl($config['couchdb']['host'] . "/{$id}");
         $req->setBody(json_encode($obj));
         $resp = $req->send();
         echo "\tDocument: {$id} (file: {$file}, line: {$count}), ";
         echo "Response: " . $resp->getStatus();
         if ($resp->getStatus() == 409) {
             echo " [duplicate]";
         }
         echo "\n";
         unset($resp);
         unset($obj);
         unset($data);
         unset($id);
     } catch (Exception $e) {
         echo "Error: " . $e->getMessage();
         exit(1);
     }
 }
开发者ID:pear,项目名称:PEAR_LogfileAnalysis,代码行数:50,代码来源:LogfileAnalysis.php

示例12: setBody

 /**
  * Sets the request body.
  * 
  * @param string $body body to use.
  * 
  * @return none
  */
 public function setBody($body)
 {
     Validate::isString($body, 'body');
     $this->_request->setBody($body);
 }
开发者ID:southworkscom,项目名称:azure-sdk-for-php,代码行数:12,代码来源:HttpClient.php

示例13: _fetch_by_options

    public function _fetch_by_options()
    {
        $method = 'Bug.search';
        $struct = '';
        foreach ($this->options as $k => $v) {
            $struct .= sprintf('<member><name>%s</name><value><%s>%s</%s></value></member>' . "\n", $k, 'string', $v, 'string');
        }
        $xml = <<<X
<?xml version="1.0" encoding="utf-8"?>
<methodCall>
    <methodName>{$method}</methodName>
    <params>
        <param>
            <struct>
                {$struct}
            </struct>
        </param>
    </params>
</methodCall>
X;
        $request = new HTTP_Request2($this->url, HTTP_Request2::METHOD_POST, array('follow_redirects' => true, 'ssl_verify_peer' => false));
        $request->setHeader('Accept', 'text/xml');
        $request->setHeader('Content-Type', 'text/xml;charset=utf-8');
        $request->setBody($xml);
        try {
            $response = $request->send();
            if (200 == $response->getStatus()) {
                $x = simplexml_load_string($response->getBody());
                $this->data['bugs'] = array();
                // FIXME there must be a better way
                foreach ($x->params->param->value->struct->member->value->array->data->value as $b) {
                    $bug = array();
                    foreach ($b->struct->member as $m) {
                        if ($m->name == 'internals') {
                            continue;
                        }
                        $value = (array) $m->value;
                        $bug[(string) $m->name] = (string) array_shift($value);
                    }
                    $this->data['bugs'][] = $bug;
                }
            } else {
                $this->error = 'Server returned unexpected HTTP status: ' . $response->getStatus() . ' ' . $response->getReasonPhrase();
                return;
            }
        } catch (HTTP_Request2_Exception $e) {
            $this->error = $e->getMessage();
            return;
        }
        if (isset($this->data['error']) && !empty($this->data['error'])) {
            $this->error = "Bugzilla API returned an error: " . $this->data['message'];
        }
    }
开发者ID:rhabacker,项目名称:mediawiki-bugzilla,代码行数:53,代码来源:BugzillaQuery.class.php

示例14: _request

 /**
  * we use the Pear::\HTTP_Request2 for all the heavy HTTP protocol lifting.
  *
  * @param string $resource api-resource
  * @param string $method request method [default:"GET"]
  * @param array $data request data as associative array [default:array()]
  * @param array $headers optional request header [default:array()]
  *
  * @throws ConnectionException
  * @throws BadRequestError
  * @throws UnauthorizedError
  * @throws ForbiddenError
  * @throws ConflictDuplicateError
  * @throws GoneError
  * @throws InternalServerError
  * @throws NotImplementedError
  * @throws ThrottledError
  * @throws CCException
  *
  * @return string json encoded servers response
  */
 private function _request($resource, $method = \HTTP_Request2::METHOD_GET, $data = array(), $headers = array())
 {
     $url = $this->_url . $resource;
     $request = new \HTTP_Request2($url);
     $request->setConfig(array('ssl_verify_peer' => API::SSL_VERIFY_PEER, 'ssl_cafile' => realpath(dirname(__FILE__)) . '/cacert.pem'));
     $methods = array('options' => \HTTP_Request2::METHOD_OPTIONS, 'get' => \HTTP_Request2::METHOD_GET, 'head' => \HTTP_Request2::METHOD_HEAD, 'post' => \HTTP_Request2::METHOD_POST, 'put' => \HTTP_Request2::METHOD_PUT, 'delete' => \HTTP_Request2::METHOD_DELETE, 'trace' => \HTTP_Request2::METHOD_TRACE, 'connect' => \HTTP_Request2::METHOD_CONNECT);
     $request->setMethod($methods[strtolower($method)]);
     #
     # If the current API instance has a valid token we add the Authorization
     # header with the correct token.
     #
     # In case we do not have a valid token but email and password are
     # provided we automatically use them to add a HTTP Basic Authenticaion
     # header to the request to create a new token.
     #
     if ($this->_token) {
         $headers['Authorization'] = sprintf('cc_auth_token="%s"', $this->_token);
     } else {
         if ($this->_email && $this->_password) {
             $request->setAuth($this->_email, $this->_password, \HTTP_Request2::AUTH_BASIC);
         }
     }
     #
     # The API expects the body to be urlencoded. If data was passed to
     # the request method we therefore use urlencode from urllib.
     #
     if (!empty($data)) {
         if ($request->getMethod() == \HTTP_Request2::METHOD_GET) {
             $url = $request->getUrl();
             $url->setQueryVariables($data);
         } else {
             // works with post and put
             $request->addPostParameter($data);
             $request->setBody(http_build_query($data));
         }
     }
     #
     # We set the User-Agent Header to pycclib and the local version.
     # This enables basic statistics about still used pycclib versions in
     # the wild.
     #
     $headers['User-Agent'] = sprintf('phpcclib/%s', $this->_version);
     #
     # The API expects PUT or POST data to be x-www-form-urlencoded so we
     # also set the correct Content-Type header.
     #
     if (strtoupper($method) == 'PUT' || strtoupper($method) == 'POST') {
         $headers['Content-Type'] = 'application/x-www-form-urlencoded';
     }
     #
     # We also set the Content-Length and Accept-Encoding headers.
     #
     //$headers['Content-Length'] = strlen($body);
     $headers['Accept-Encoding'] = 'compress, gzip';
     #
     # Finally we fire the actual request.
     #
     foreach ($headers as $k => $v) {
         $request->setHeader(sprintf('%s: %s', $k, $v));
     }
     for ($i = 1; $i < 6; $i++) {
         try {
             $response = $request->send();
             return $this->_return($response);
         } catch (\HTTP_Request2_Exception $e) {
             # if we could not reach the API we wait 1s and try again
             sleep(1);
             # if we tried for the fifth time we give up - and cry a little
             if ($i == 5) {
                 throw new ConnectionException('Could not connect to API...');
             }
         }
     }
 }
开发者ID:cloudcontrol,项目名称:phpcclib,代码行数:95,代码来源:API.php

示例15: _sendRequestWithBody

 /**
  * Send an OAuth signed request with a body to the API
  *
  * @param string $url    The URL to send the request to
  * @param string $body   The raw body to PUT/POST to the URL
  * @param string $method The HTTP method to use (POST or PUT)
  *
  * @return object Instance of {@link HTTP_Request2_Response}
  * @see http://bit.ly/cdZGfr
  */
 private function _sendRequestWithBody($url, $body, $method = "PUT")
 {
     static $map = array('PUT' => HTTP_Request2::METHOD_PUT, 'POST' => HTTP_Request2::METHOD_POST);
     if (array_key_exists($method, $map)) {
         $method = $map[$method];
     } else {
         throw new Services_SimpleGeo_Exception('Invalid HTTP method ' . $method);
     }
     $signatureMethod = $this->_oauth->getSignatureMethod();
     $params = array('oauth_nonce' => (string) rand(0, 100000000), 'oauth_timestamp' => time(), 'oauth_consumer_key' => $this->_oauth->getKey(), 'oauth_signature_method' => $signatureMethod, 'oauth_version' => '1.0');
     $sig = HTTP_OAuth_Signature::factory($signatureMethod);
     $params['oauth_signature'] = $sig->build($method, $url, $params, $this->_secret);
     // Build the header
     $header = 'OAuth realm="' . $this->_api . '"';
     foreach ($params as $name => $value) {
         $header .= ", " . HTTP_OAuth::urlencode($name) . '="' . HTTP_OAuth::urlencode($value) . '"';
     }
     $req = new HTTP_Request2(new Net_URL2($url), $method);
     $req->setHeader('Authorization', $header);
     $req->setBody($body);
     try {
         $result = $req->send();
     } catch (Exception $e) {
         throw new Services_SimpleGeo_Exception($e->getMessage(), $e->getCode());
     }
     $check = (int) substr($result->getStatus(), 0, 1);
     if ($check !== 2) {
         $body = @json_decode($result->getBody());
         throw new Services_SimpleGeo_Exception($body->message, $result->getStatus());
     }
     return $result;
 }
开发者ID:utkarsh12,项目名称:Services_SimpleGeo,代码行数:42,代码来源:SimpleGeo.php


注:本文中的HTTP_Request2::setBody方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。