def unparse(scheme, host, port, path=""): """ Returns a URL string, constructed from the specified components. Args: All args must be str. """ if path == "*": path = "" return "%s://%s%s" % (scheme, utils.hostport(scheme, host, port), path)
def _assemble_request_headers(request_data): """ Args: request_data (netlib.http.request.RequestData) """ headers = request_data.headers.copy() if "host" not in headers and request_data.scheme and request_data.host and request_data.port: headers["host"] = utils.hostport( request_data.scheme, request_data.host, request_data.port ) return bytes(headers)
def _assemble_request_headers(self, request): headers = request.headers.copy() for k in request._headers_to_strip_off: del headers[k] if 'host' not in headers and request.scheme and request.host and request.port: headers["Host"] = [utils.hostport(request.scheme, request.host, request.port)] # If content is defined (i.e. not None or CONTENT_MISSING), we always # add a content-length header. if request.body or request.body == "": headers["Content-Length"] = [str(len(request.body))] return headers.format()
def _assemble_request_headers(self, request): headers = request.headers.copy() for k in request._headers_to_strip_off: del headers[k] if 'host' not in headers and request.scheme and request.host and request.port: headers["Host"] = [ utils.hostport(request.scheme, request.host, request.port) ] # If content is defined (i.e. not None or CONTENT_MISSING), we always # add a content-length header. if request.body or request.body == "": headers["Content-Length"] = [str(len(request.body))] return headers.format()
def _assemble_headers(self): headers = self.headers.copy() utils.del_all(headers, [ 'Proxy-Connection', 'Keep-Alive', 'Connection', 'Transfer-Encoding' ]) if not 'host' in headers: headers["Host"] = [ utils.hostport(self.scheme, self.host or self.flow.server_conn.address.host, self.port or self.flow.server_conn.address.port) ] if self.content: headers["Content-Length"] = [str(len(self.content))] elif 'Transfer-Encoding' in self.headers: # content-length for e.g. chuncked transfer-encoding with no content headers["Content-Length"] = ["0"] return str(headers)
def _assemble_headers(self): headers = self.headers.copy() for k in ['Proxy-Connection', 'Keep-Alive', 'Connection', 'Transfer-Encoding']: del headers[k] if headers["Upgrade"] == ["h2c"]: # Suppress HTTP2 https://http2.github.io/http2-spec/index.html#discover-http del headers["Upgrade"] if not 'host' in headers: headers["Host"] = [utils.hostport(self.scheme, self.host or self.flow.server_conn.address.host, self.port or self.flow.server_conn.address.port)] if self.content: headers["Content-Length"] = [str(len(self.content))] elif 'Transfer-Encoding' in self.headers: # content-length for e.g. chuncked transfer-encoding with no content headers["Content-Length"] = ["0"] return str(headers)
def _assemble_headers(self): headers = self.headers.copy() utils.del_all( headers, [ 'Proxy-Connection', 'Keep-Alive', 'Connection', 'Transfer-Encoding' ] ) if not 'host' in headers: headers["Host"] = [utils.hostport(self.scheme, self.host or self.flow.server_conn.address.host, self.port or self.flow.server_conn.address.port)] if self.content: headers["Content-Length"] = [str(len(self.content))] elif 'Transfer-Encoding' in self.headers: # content-length for e.g. chuncked transfer-encoding with no content headers["Content-Length"] = ["0"] return str(headers)
def _assemble_headers(self): headers = self.headers.copy() for k in [ 'Proxy-Connection', 'Keep-Alive', 'Connection', 'Transfer-Encoding' ]: del headers[k] if headers["Upgrade"] == [ "h2c" ]: # Suppress HTTP2 https://http2.github.io/http2-spec/index.html#discover-http del headers["Upgrade"] if not 'host' in headers and self.scheme and self.host and self.port: headers["Host"] = [ utils.hostport(self.scheme, self.host, self.port) ] if self.content: headers["Content-Length"] = [str(len(self.content))] elif 'Transfer-Encoding' in self.headers: # content-length for e.g. chuncked transfer-encoding with no content headers["Content-Length"] = ["0"] return str(headers)