Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Getting Host field from HTTP request in BaseHTTPRequestHandler

I'm writing a script using BaseHTTPRequestHandler class. And in do_GET(self) method I need to get the content of the Host field from the HTTP request. I can do it by regexping the str(self.headers) like proposed here: Determine site domain in BaseHTTPServer, but it's kinda ugly and I wonder if there's cleaner way to do that.

Thanks in advance.

like image 472
Alex Avatar asked Apr 21 '11 13:04

Alex


Video Answer


1 Answers

The attribute self.headers is a dictionary-like structure, so you can do this:

def do_GET(self):
    host = self.headers.get('Host')

When the header does not exist, None is returned.

like image 124
samplebias Avatar answered Oct 18 '22 13:10

samplebias