add handler name to request as endpoint

This commit is contained in:
Raphael Deem
2017-10-16 22:40:21 -07:00
parent c5cdcf0f95
commit 75f2180cb1
4 changed files with 32 additions and 1 deletions

View File

@@ -247,6 +247,7 @@ class Sanic:
def response(handler):
async def websocket_handler(request, *args, **kwargs):
request.app = self
request.endpoint = handler.__name__
try:
protocol = request.transport.get_protocol()
except AttributeError:
@@ -540,6 +541,7 @@ class Sanic:
# Fetch handler from router
handler, args, kwargs, uri = self.router.get(request)
request.endpoint = handler.__name__
request.uri_template = uri
if handler is None:
raise ServerError(

View File

@@ -46,7 +46,8 @@ class Request(dict):
__slots__ = (
'app', 'headers', 'version', 'method', '_cookies', 'transport',
'body', 'parsed_json', 'parsed_args', 'parsed_form', 'parsed_files',
'_ip', '_parsed_url', 'uri_template', 'stream', '_remote_addr'
'_ip', '_parsed_url', 'uri_template', 'stream', '_remote_addr',
'endpoint',
)
def __init__(self, url_bytes, headers, version, method, transport):
@@ -68,6 +69,7 @@ class Request(dict):
self.uri_template = None
self._cookies = None
self.stream = None
self.endpoint = None
def __repr__(self):
if self.method is None or not self.path: