Spaces:
Build error
Build error
import jwt | |
from werkzeug.exceptions import Unauthorized | |
from configs import dify_config | |
class PassportService: | |
def __init__(self): | |
self.sk = dify_config.SECRET_KEY | |
def issue(self, payload): | |
return jwt.encode(payload, self.sk, algorithm="HS256") | |
def verify(self, token): | |
try: | |
return jwt.decode(token, self.sk, algorithms=["HS256"]) | |
except jwt.exceptions.InvalidSignatureError: | |
raise Unauthorized("Invalid token signature.") | |
except jwt.exceptions.DecodeError: | |
raise Unauthorized("Invalid token.") | |
except jwt.exceptions.ExpiredSignatureError: | |
raise Unauthorized("Token has expired.") | |