2011-02-02 82 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