コード例 #1
0
ファイル: jwt.py プロジェクト: hdknr/jose
    def parse(cls, token, sender, recipient):
        from jose.jwe import Message as JweMessage, NotJweException
        from jose.jws import Message as JwsMessage

        parts = token.split('.')
        if len(parts) < 2:
            # TODO: Define exception
            raise Exception("not JWT")

        try:
            obj = JweMessage.parse_token(token, sender, recipient) 
        except NotJweException:
            obj = JwsMessage.parse_token(token, sender, recipient)

        if not obj:
            return None

        verified = obj.verify() 

        header = obj.header()
        if header.cty == 'JWT':
            return cls.parse(obj.text(), sender, recipient)

        return obj and cls.from_json(obj.text(), verified=verified) or None