在使用WordPress發(fā)送HTTP請(qǐng)求是一件非常容易的事,很多PHP函數(shù)都能實(shí)現(xiàn),比如fopen
、curl
等,但是不同的PHP環(huán)境中,這些函數(shù)可能是不被允許使用的。為了能為開(kāi)發(fā)者提供一個(gè)穩(wěn)定的,不受環(huán)境影響的發(fā)送HTTP請(qǐng)求工具,WordPress官方提供了WP_Http類。
WordPress 2.7 開(kāi)始引入了一個(gè)新的 PHP Class:WP_Http(在 wp-includes 目錄 http.php 文件中)。這個(gè) Class 的強(qiáng)大之處是它會(huì)檢測(cè)服務(wù)器的情況,選擇最好的方法去實(shí)現(xiàn) HTTP 請(qǐng)求,所以我們自己無(wú)須去檢測(cè) HTTP 擴(kuò)展。
_dispatch_request — 向支持傳輸發(fā)送HTTP請(qǐng)求。-棄用
_get_first_available_transport —測(cè)試能夠支持請(qǐng)求的傳輸。
block_request — 確定是否應(yīng)阻止對(duì)給定URL的HTTPAPI請(qǐng)求。
browser_redirect_compatibility — 將重定向行為匹配到瀏覽器處理。
buildCookieHeader — 傳入一個(gè)request()參數(shù),并檢查cookie數(shù)組。
chunkTransferDecode — 解碼塊傳輸-編碼,基于HTTP1.1規(guī)范。
get — 使用HTTP GET方式訪問(wèn)。
handle_redirects — 處理HTTP重定向,并酌情遵循它。
head — 使用Head HTTP方法。
is_ip_address — 確定指定的字符串是否表示IP地址。
make_absolute_url — 將相對(duì)URL轉(zhuǎn)換為相對(duì)于給定URL的絕對(duì)URL。
normalize_cookies — 規(guī)范用于請(qǐng)求的cookie。
parse_url — 用作PHP解析_url()函數(shù)的包裝器,該函數(shù)處理PHP 5.4.7中的EDgecase。-棄用
post — 使用HTTP POST方法訪問(wèn)。
processHeaders — 將頭字符串轉(zhuǎn)換為數(shù)組。
processResponse — 解析響應(yīng)并將部分拆分為標(biāo)題和正文。
request — 向URI發(fā)送HTTP請(qǐng)求。
validate_redirects — 驗(yàn)證重定向URL。
發(fā)送GET請(qǐng)求
/** *使用 WP_Http 類發(fā)送簡(jiǎn)單的 GET 請(qǐng)求 */ $http = new WP_Http; $result = $http->request( 'http://www.11px.cn' );
返回如下字段
headers:返回的 headers 信息,是一個(gè)數(shù)組
body:目標(biāo)的內(nèi)容,和在瀏覽器里直接看是一樣的
response:返回的代碼,如果請(qǐng)求成功會(huì)返回 array( ‘code’=>200, ‘message’=>’OK’ )
cookies:Cookie 信息,是一個(gè)數(shù)組
發(fā)送POST請(qǐng)求
/***使用 WP_Http 類發(fā)送簡(jiǎn)單的 POST $http = new WP_Http; $parm = array( 'name' => 'daimadog', 'blog' => 'http://www.11px.cn' ); $result = $http->request( 'http://www.11px.cn', array( 'method' => 'POST', 'body' => $parm ) );
返回如下字段
headers:返回的 headers 信息,是一個(gè)數(shù)組
body:目標(biāo)的內(nèi)容,和在瀏覽器里直接看是一樣的
response:返回的代碼,如果請(qǐng)求成功會(huì)返回 array( ‘code’=>200, ‘message’=>’OK’ )
cookies:Cookie 信息,是一個(gè)數(shù)組
版權(quán)聲明: 本站資源均來(lái)自互聯(lián)網(wǎng)或會(huì)員發(fā)布,如果侵犯了您的權(quán)益請(qǐng)與我們聯(lián)系,我們將在24小時(shí)內(nèi)刪除!謝謝!
轉(zhuǎn)載請(qǐng)注明: WordPress官方WP_Http類請(qǐng)求函數(shù)