login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Head request? (Opgelost)

Offline ikkedikke - 22/04/2007 17:34
Avatar van ikkedikkePHP expert Je hebt oa get en post requests, maar wordt een PHP-script ook uitgevoerd bij een HEAD request?

4 antwoorden

Gesponsorde links
Offline Rik - 22/04/2007 17:50
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Volgens mij kwam ik ook iets tegen over een HEAD request hier sima, weet alleen niet meer waar! 

Head:
Citaat:
The HEAD method is identical to GET except that the server MUST NOT return a message-body in the response. The metainformation contained in the HTTP headers in response to a HEAD request SHOULD be identical to the information sent in response to a GET request. This method can be used for obtaining metainformation about the entity implied by the request without transferring the entity-body itself. This method is often used for testing hypertext links for validity, accessibility, and recent modification.


Ik heb het zelf ook even geprobeerd en je krijgt idd alleen headers terug.
Offline ikkedikke - 22/04/2007 18:16
Avatar van ikkedikke PHP expert als ik het goed begrijp wordt dan dus evt code uitgevoerd aangezien die de headers zouden kunnen aanpassen..?
Offline Rik - 22/04/2007 20:09
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Ik gebruik deze code om te testen (socket.php):
  1. $socket = fsockopen('127.0.0.1', 80, $errno, $errstr, 1);
  2. if ($socket === false) {
  3. echo $errstr . '(' . $errstr . ')';
  4. } else {
  5. $send = array(
  6. 'HEAD /receive.php?var=blaat HTTP/1.1',
  7. 'Host: localhost',
  8. 'Connection: Close'
  9. );
  10. fwrite($socket, implode("\r\n", $send) . "\r\n\r\n");
  11. while (!feof($socket)) {
  12. echo fgets($socket, 1024);
  13. }
  14. fclose($socket);
  15. }


En ik heb een bestand dat een antwoord stuurt (receive.php):
  1. <?php
  2. define('NLN', "\n");
  3. echo '<strong>COOKIE:</strong>' . NLN;
  4. print_r($_COOKIE);
  5.  
  6. echo NLN . '<strong>GET:</strong>' . NLN;
  7. print_r($_GET);
  8.  
  9. echo NLN . '<strong>POST:</strong>' . NLN;
  10. print_r($_POST);
  11.  
  12. echo NLN. '<strong>SERVER:</strong>' . NLN;
  13. print_r($_SERVER);
  14.  
  15. file_put_contents('tempie.txt', $_GET['var']);
  16. ?>


Er wordt ook met een HEAD request in het bestand geschreven (wel eerst leeggehaald natuurlijk) dus de php wordt wel uitgevoerd. Ook als ik vannuit receive.php headers verstuur als deze:
  1. header('Een of andere var: hierzo! ^^');


Wordt die netjes verwerkt in de headers die ik dan terugkrijg:
  1. HTTP/1.1 200 OK
  2. Date: Sun, 22 Apr 2007 18:07:08 GMT
  3. Server: Apache/2.0.55 (Win32) PHP/5.2.1
  4. X-Powered-By: PHP/5.2.1
  5. Een of andere var: hierzo! ^^
  6. Connection: close
  7. Content-Type: text/html


Volgens mij heb ik het zo wel zo'n beetje bewezen. 
Offline ikkedikke - 22/04/2007 22:11
Avatar van ikkedikke PHP expert Dit volstaat wel ja 
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.192s