in sample-client/cloudfunctions/common_lib/utils.py [0:0]
def _get_jwt():
"""Checks to see if the global JWT is still valid and either returns it or
generates a new one."""
global JWT
if JWT is None:
JWT = _generate_jwt()
else:
try:
# This will throw a ValueError if the JWT is expired by over 5 min
decoded = jwt.decode(JWT, verify=False)
# Err on the side of caution and just create a new JWT if we're at expiry
if time.time() >= decoded['exp']:
JWT = _generate_jwt()
except ValueError:
JWT = _generate_jwt()
return JWT