Merge branch 'master' into 977

This commit is contained in:
Raphael Deem
2017-10-25 22:18:25 -07:00
committed by GitHub
12 changed files with 75 additions and 39 deletions

View File

@@ -47,7 +47,7 @@ class Request(dict):
'app', 'headers', 'version', 'method', '_cookies', 'transport',
'body', 'parsed_json', 'parsed_args', 'parsed_form', 'parsed_files',
'_ip', '_parsed_url', 'uri_template', 'stream', '_remote_addr',
'endpoint',
'_socket', '_port', 'endpoint'
)
def __init__(self, url_bytes, headers, version, method, transport):
@@ -169,11 +169,27 @@ class Request(dict):
@property
def ip(self):
if not hasattr(self, '_ip'):
self._ip = (self.transport.get_extra_info('peername') or
(None, None))
if not hasattr(self, '_socket'):
self._get_address()
return self._ip
@property
def port(self):
if not hasattr(self, '_socket'):
self._get_address()
return self._port
@property
def socket(self):
if not hasattr(self, '_socket'):
self._get_socket()
return self._socket
def _get_address(self):
self._socket = (self.transport.get_extra_info('peername') or
(None, None))
self._ip, self._port = self._socket
@property
def remote_addr(self):
"""Attempt to return the original client ip based on X-Forwarded-For.