php類比asp中的XmlHttpRequest實現http請求的代碼

來源:互聯網
上載者:User

類名 :HttpRequest($url="",$method="GET",$useSocket=0)
//$url為請求的地址;預設要求方法為GET;$useSocket預設為0,使用fsockopen方法,如果設定為1則使用socket_create方法

方法:
open($ip="",$port=-1) //開啟同伺服器的串連,預設不用設定這兩個參數(一個同事在linux用的時候,請求的不是hostname解析的IP,因此加了這兩個參數,以串連真實的伺服器IP)
setTimeout($timeout=0) //設定擷取資料的逾時時間,必須在send方法調用之前設定才有效,單位秒,預設值0為不限制
setRequestHeader($key,$value="") //佈建要求頭,必須在send方法調用之前設定才有效
removeRequestHeader($key,$value="") //移除指定索引值的要求標頭,必須在send方法調用之前調用才有效
send($data="") //發送資料$data到伺服器
getResponseBody() //擷取伺服器返回的文本
getAllResponseHeaders() //擷取伺服器響應的所有頭資訊
getResponseHeader($key) //擷取伺服器響應的某個頭資訊,例如Server,Set_Cookie等

屬性:
$url //要請求的url
$method //要求方法(POST/GET)
$port //請求的連接埠
$hostname //請求的主機名稱
$uri //url的檔案部分
$protocol //請求協議(http)(包括本屬性的以上5個屬性均由程式自動通過url分析)
$excption //異常資訊
$_headers=array() //要求標頭array("key"=>"value")
$_senddata //發送到伺服器的資料
$status //返回的狀態代碼
$statusText //狀態資訊
$HttpProtocolVersion //伺服器的HTTP協議版本

注意:
Host頭由程式自動化佈建,當用POST方法請求時,Content-Length和Content-Type已被自動化佈建。
支援gzip壓縮的頁面
php_XmlHttpRequest.rar

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.