Merge pull request #391 from rumpelsepp/syncthing

Use CSFR Token in Syncthing module
This commit is contained in:
enkore 2016-05-24 12:20:17 +02:00
commit b686afe42e

View File

@ -40,11 +40,16 @@ class Syncthing(IntervalModule):
) )
def st_get(self, endpoint): def st_get(self, endpoint):
response = requests.get( # TODO: Maybe we can share a session across multiple GETs.
with requests.Session() as s:
r = s.get(self.url)
csrf_name, csfr_value = r.headers['Set-Cookie'].split('=')
s.headers.update({'X-' + csrf_name: csfr_value})
r = s.get(
urljoin(self.url, endpoint), urljoin(self.url, endpoint),
verify=self.verify_ssl, verify=self.verify_ssl,
) )
return json.loads(response.text) return json.loads(r.text)
def st_post(self, endpoint, data=None): def st_post(self, endpoint, data=None):
headers = {'X-API-KEY': self.apikey} headers = {'X-API-KEY': self.apikey}