本文整理匯總了PHP中HTTP_Request::setUrl方法的典型用法代碼示例。如果您正苦於以下問題:PHP HTTP_Request::setUrl方法的具體用法?PHP HTTP_Request::setUrl怎麽用?PHP HTTP_Request::setUrl使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類HTTP_Request
的用法示例。
在下文中一共展示了HTTP_Request::setUrl方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: request
/**
* 配信サーバへリクエストを送信する.
*
* @param string $mode
* @param array $arrParams 追加パラメータ.連想配列で渡す.
* @return string|object レスポンスボディ|エラー時にはPEAR::Errorオブジェクトを返す.
*/
function request($mode, $arrParams = array(), $arrCookies = array())
{
$objReq = new HTTP_Request();
$objReq->setUrl(OSTORE_URL . 'upgrade/index.php');
$objReq->setMethod('POST');
$objReq->addPostData('mode', $mode);
$objReq->addPostDataArray($arrParams);
foreach ($arrCookies as $cookie) {
$objReq->addCookie($cookie['name'], $cookie['value']);
}
$e = $objReq->sendRequest();
if (PEAR::isError($e)) {
return $e;
} else {
return $objReq;
}
}
示例2: _request
/**
* _request
* 發出請求,統一錯誤解析
*
* @param string $type
* @param array $data
* @param bool $isPost
*
* @return array
*/
private function _request($type, $data = array(), $isPost = false)
{
// 需要 appToken
if (!$data['appToken'] && !in_array($type, $this->noNeedAppToken)) {
$data['appToken'] = $this->getAppToken();
}
// 需要 accessToken
if (!$data['accessToken'] && !in_array($type, $this->noNeedAccessToken)) {
$data['accessToken'] = $this->getAccessToken();
}
// 請求地址
$requestUrl = $this->apiHost . $type;
// 指定請求的超時時間
$httpRequest = new HTTP_Request($requestUrl, HTTP_Request::METHOD_GET, array('connect_timeout' => 1, 'timeout' => 2));
// 文件上傳
if ($type == '/v1/thread/upload') {
$httpRequest->addFileParameter('pic', $data['pic']);
unset($data['pic']);
}
// post數據
if ($isPost) {
$httpRequest->setMethod(HTTP_Request::METHOD_POST);
foreach ($data as $name => $value) {
$httpRequest->addPostParameter($name, $value);
}
} else {
$httpRequest->setUrl($requestUrl . '?' . http_build_query($data));
}
// 發送請求
try {
$response = $httpRequest->send();
$result = json_decode($response->getBody(), true);
} catch (Exception $e) {
throw new Exception($e->getMessage(), $e->getCode());
}
if ($response->getStatus() != 200) {
throw new Exception('接口請求失敗', $response->getStatus());
return false;
}
if ($result['errCode']) {
throw new Exception($result['errMsg'], $result['errCode']);
return false;
}
return $result['data'];
}