@@ -136,15 +136,20 @@ def devices(self):
136136 data = self .query (MyPlexDevice .key )
137137 return [MyPlexDevice (self , elem ) for elem in data ]
138138
139+ def _headers (self , ** kwargs ):
140+ """ Returns dict containing base headers for all requests to the server. """
141+ headers = BASE_HEADERS .copy ()
142+ if self ._token :
143+ headers ['X-Plex-Token' ] = self ._token
144+ headers .update (kwargs )
145+ return headers
146+
139147 def query (self , url , method = None , headers = None , timeout = None , ** kwargs ):
140148 method = method or self ._session .get
141- delim = '&' if '?' in url else '?'
142- url = '%s%sX-Plex-Token=%s' % (url , delim , self ._token )
143149 timeout = timeout or TIMEOUT
144150 log .debug ('%s %s %s' , method .__name__ .upper (), url , kwargs .get ('json' , '' ))
145- allheaders = BASE_HEADERS .copy ()
146- allheaders .update (headers or {})
147- response = method (url , headers = allheaders , timeout = timeout , ** kwargs )
151+ headers = self ._headers (** headers or {})
152+ response = method (url , headers = headers , timeout = timeout , ** kwargs )
148153 if response .status_code not in (200 , 201 , 204 ):
149154 codename = codes .get (response .status_code )[0 ]
150155 errtext = response .text .replace ('\n ' , ' ' )
0 commit comments