tests/get-with-headers.py
branchstable
changeset 1201 6f2f7246e4be
parent 1200 1a67e2797f33
child 1297 60e578eae19d
equal deleted inserted replaced
1200:1a67e2797f33 1201:6f2f7246e4be
    14 
    14 
    15 twice = False
    15 twice = False
    16 if '--twice' in sys.argv:
    16 if '--twice' in sys.argv:
    17     sys.argv.remove('--twice')
    17     sys.argv.remove('--twice')
    18     twice = True
    18     twice = True
       
    19 headeronly = False
       
    20 if '--headeronly' in sys.argv:
       
    21     sys.argv.remove('--headeronly')
       
    22     headeronly = True
    19 
    23 
    20 reasons = {'Not modified': 'Not Modified'} # python 2.4
    24 reasons = {'Not modified': 'Not Modified'} # python 2.4
    21 
    25 
    22 tag = None
    26 tag = None
    23 def request(host, path, show):
    27 def request(host, path, show):
    35         show = sorted(h for h, v in response.getheaders()
    39         show = sorted(h for h, v in response.getheaders()
    36                       if h.lower() not in show)
    40                       if h.lower() not in show)
    37     for h in [h.lower() for h in show]:
    41     for h in [h.lower() for h in show]:
    38         if response.getheader(h, None) is not None:
    42         if response.getheader(h, None) is not None:
    39             print "%s: %s" % (h, response.getheader(h))
    43             print "%s: %s" % (h, response.getheader(h))
       
    44     if not headeronly:
       
    45         print
       
    46         data = response.read()
       
    47         sys.stdout.write(data)
    40 
    48 
    41     print
    49         if twice and response.getheader('ETag', None):
    42     data = response.read()
    50             tag = response.getheader('ETag')
    43     sys.stdout.write(data)
       
    44 
       
    45     if twice and response.getheader('ETag', None):
       
    46         tag = response.getheader('ETag')
       
    47 
    51 
    48     return response.status
    52     return response.status
    49 
    53 
    50 status = request(sys.argv[1], sys.argv[2], sys.argv[3:])
    54 status = request(sys.argv[1], sys.argv[2], sys.argv[3:])
    51 if twice:
    55 if twice: