From a3d79ab523c5f1a92bde255ca38ea822307886d2 Mon Sep 17 00:00:00 2001 From: Craig Date: Mon, 10 Sep 2018 16:36:12 -0400 Subject: [PATCH 1/2] Do not override headers passed in request_kwargs If headers are passed in as part of the request_kwargs, then make sure they are not overridden as part of the load. This is required if you are limiting your API by using referer. --- googlemaps/client.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/googlemaps/client.py b/googlemaps/client.py index 89ad179c..c4e1d5c1 100644 --- a/googlemaps/client.py +++ b/googlemaps/client.py @@ -149,8 +149,10 @@ def __init__(self, key=None, client_id=None, client_secret=None, self.channel = channel self.retry_timeout = timedelta(seconds=retry_timeout) self.requests_kwargs = requests_kwargs or {} + headers = self.request_kwargs.pop('headers', {}) + headers.update({"User-Agent": _USER_AGENT}) self.requests_kwargs.update({ - "headers": {"User-Agent": _USER_AGENT}, + "headers": headers, "timeout": self.timeout, "verify": True, # NOTE(cbro): verify SSL certs. }) From f6e02a5bfa2971b0cb56cf7c12f7d9f9e5dc03ca Mon Sep 17 00:00:00 2001 From: Craig Date: Mon, 10 Sep 2018 16:50:26 -0400 Subject: [PATCH 2/2] Update client.py --- googlemaps/client.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/googlemaps/client.py b/googlemaps/client.py index c4e1d5c1..6c695f31 100644 --- a/googlemaps/client.py +++ b/googlemaps/client.py @@ -149,7 +149,7 @@ def __init__(self, key=None, client_id=None, client_secret=None, self.channel = channel self.retry_timeout = timedelta(seconds=retry_timeout) self.requests_kwargs = requests_kwargs or {} - headers = self.request_kwargs.pop('headers', {}) + headers = self.requests_kwargs.pop('headers', {}) headers.update({"User-Agent": _USER_AGENT}) self.requests_kwargs.update({ "headers": headers,