From 3896a3d26e7fc683110fa54d3a2b0cc4a97791bd Mon Sep 17 00:00:00 2001 From: Nokome Bentley Date: Mon, 19 Nov 2018 14:04:03 +1300 Subject: [PATCH] Allow for additional options in proxy request --- nbserverproxy/handlers.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/nbserverproxy/handlers.py b/nbserverproxy/handlers.py index 7990e1e8..3b3ac931 100644 --- a/nbserverproxy/handlers.py +++ b/nbserverproxy/handlers.py @@ -235,7 +235,8 @@ async def proxy(self, port, proxied_path): req = httpclient.HTTPRequest( client_uri, method=self.request.method, body=body, - headers=self.request.headers, follow_redirects=False) + headers=self.request.headers, + **self.proxy_request_options()) response = await client.fetch(req, raise_error=False) # record activity at start and end of requests @@ -260,6 +261,11 @@ async def proxy(self, port, proxied_path): if response.body: self.write(response.body) + def proxy_request_options(self): + '''A dictionary of options to be used when constructing + a tornado.httpclient.HTTPRequest instance for the proxy request.''' + return dict(follow_redirects=False) + # Support all the methods that torando does by default except for GET which # is passed to WebSocketHandlerMixin and then to WebSocketHandler.