tests/get-with-headers.py
changeset 516 0107b6de1a35
parent 515 9ea5ac3258b6
child 566 986012d03ed3
equal deleted inserted replaced
509:16b690351c0d 516:0107b6de1a35
       
     1 #!/usr/bin/env python
       
     2 
       
     3 __doc__ = """This does HTTP get requests given a host:port and path and returns
       
     4 a subset of the headers plus the body of the result."""
       
     5 
       
     6 import httplib, sys
       
     7 
       
     8 try:
       
     9     import msvcrt, os
       
    10     msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY)
       
    11     msvcrt.setmode(sys.stderr.fileno(), os.O_BINARY)
       
    12 except ImportError:
       
    13     pass
       
    14 
       
    15 headers = [h.lower() for h in sys.argv[3:]]
       
    16 conn = httplib.HTTPConnection(sys.argv[1])
       
    17 conn.request("GET", sys.argv[2])
       
    18 response = conn.getresponse()
       
    19 print response.status, response.reason
       
    20 for h in headers:
       
    21     if response.getheader(h, None) is not None:
       
    22         print "%s: %s" % (h, response.getheader(h))
       
    23 print
       
    24 sys.stdout.write(response.read())
       
    25 
       
    26 if 200 <= response.status <= 299:
       
    27     sys.exit(0)
       
    28 sys.exit(1)