2
0
Просмотр исходного кода

[ZF-9857] HEAD method missing from Zend_http_client_adapter_curl

git-svn-id: http://framework.zend.com/svn/framework/standard/trunk@22213 44c647ce-9c0f-0410-b52a-842ac1e357ba
jan 15 лет назад
Родитель
Сommit
5f2cb87ec4
2 измененных файлов с 17 добавлено и 0 удалено
  1. 5 0
      library/Zend/Http/Client/Adapter/Curl.php
  2. 12 0
      tests/Zend/Http/Client/CurlTest.php

+ 5 - 0
library/Zend/Http/Client/Adapter/Curl.php

@@ -333,6 +333,11 @@ class Zend_Http_Client_Adapter_Curl implements Zend_Http_Client_Adapter_Interfac
                 $curlMethod = CURLOPT_CUSTOMREQUEST;
                 $curlValue = "TRACE";
                 break;
+            
+            case Zend_Http_Client::HEAD:
+                $curlMethod = CURLOPT_CUSTOMREQUEST;
+                $curlValue = "HEAD";
+                break;
 
             default:
                 // For now, through an exception for unsupported request methods

+ 12 - 0
tests/Zend/Http/Client/CurlTest.php

@@ -301,6 +301,18 @@ class Zend_Http_Client_CurlTest extends Zend_Http_Client_CommonHttpTests
 
         $this->assertTrue(is_resource($adapter->getHandle()));
     }
+    
+    /**
+     * @group ZF-9857
+     */
+    public function testHeadRequest()
+    {
+        $this->client->setUri($this->baseuri . 'testRawPostData.php');
+        $adapter = new Zend_Http_Client_Adapter_Curl;
+        $this->client->setAdapter($adapter);
+        $this->client->request('HEAD');
+        $this->assertEquals('', $this->client->getLastResponse()->getBody());
+    }
 }
 
 if (PHPUnit_MAIN_METHOD == 'Zend_Http_Client_CurlTest::main') {