1234567891011121314151617181920212223 |
- import json
- from oauthlib.common import to_unicode
- def mailchimp_compliance_fix(session):
- def _null_scope(r):
- token = json.loads(r.text)
- if "scope" in token and token["scope"] is None:
- token.pop("scope")
- r._content = to_unicode(json.dumps(token)).encode("utf-8")
- return r
- def _non_zero_expiration(r):
- token = json.loads(r.text)
- if "expires_in" in token and token["expires_in"] == 0:
- token["expires_in"] = 3600
- r._content = to_unicode(json.dumps(token)).encode("utf-8")
- return r
- session.register_compliance_hook("access_token_response", _null_scope)
- session.register_compliance_hook("access_token_response", _non_zero_expiration)
- return session
|