2011-02-02 119 views
1

我正在使用PHP和PEAR HTTP REQUEST包(http://pear.php.net/package/HTTP_Request/)爲REST存儲庫開發UI。 我創建了一個HTTP GET請求,並按預期提供了所請求的rdf/xml文件。但是我想擴展這個請求,並且我無法實現這個工作。 存儲庫允許發送附加到ID的zip文件。所以我必須調用提供rdf/xml數據的同一個URL,但在執行我的請求之前,我必須從xml更改HTTP GET標頭以接受:application/zip。這應該提供zip而不是rdf/xml文件。PHP HTTP標頭REST

$req =& new HTTP_Request(); 
$req->setMethod(HTTP_REQUEST_METHOD_GET); 
$req->setURL($url); 
$req->clearPostData(); 
if (!PEAR::isError($req->sendRequest())) { 
    $response2 = $req->getResponseBody(); 
} else { 
    $response2 = ""; 
} 

echo $response2; 

有誰知道如何修改GET調用來完成這個工作嗎?我真的需要幫助!

此外,我想創建一個使用multipart/form-data的HTTP PUT請求。有誰知道如何做到這一點?

請幫幫我!謝謝!

回答

2

關於第一個問題,

$req->addHeader('Accept', 'application/zip'); 
# assuming that this will trigger the server to respond with the zip and not xml 

題號2:

您可以通過設置您的GET請求頭的接受場0

閱讀更多關於file uploads using HTTP_Request

+0

非常感謝! GET請求工作正常! – Matt 2011-02-02 12:39:54