2015-03-24 3 views
1

У меня есть схема аутентификации на основе токенов весной. Но JWTParser кажется хлопотным. Что действительно делает класс JWTParser в приведенном ниже коде? Кроме того, я не могу импортировать этот класс.Spring - JWTParser (String) не найден

public class JWTAuthenticationToken extends AbstractAuthenticationToken { 
    private static final long serialVersionUID = 1L; 
    private final Object principal; 
    private Object details; 

    Collection authorities; 

    public JWTAuthenticationToken(String jwtToken) { 
     super(null); 
     super.setAuthenticated(true); // must use super, as we override 
     JWTParser parser = new JWTParser(jwtToken); 

     this.principal = parser.getSub(); 

     this.setDetailsAuthorities(); 

    } 

    @Override 
    public Object getCredentials() { 
     return ""; 
    } 

    @Override 
    public Object getPrincipal() { 
     return principal; 
    } 

    private void setDetailsAuthorities() { 
     String username = principal.toString(); 
     SpringUserDetailsAdapter adapter = new SpringUserDetailsAdapter(username); 
     details = adapter; 
     authorities = (Collection) adapter.getAuthorities(); 

    } 

    @Override 
    public Collection getAuthorities() { 
     return authorities; 
    } 
} 

Любая работа вокруг?

+0

Я имею такой же вопрос, пожалуйста, ответьте, если у вас есть какие-либо обходной путь –

+0

@Ravi, к сожалению, я нашел никакой работы вокруг на всех –

+0

Спасибо за ваш ответ @Vishnu G S. Я понял, обходной путь. –

ответ

1
JwtParser parser =new DefaultJwtParser(); 
parser.parse(jwtToken); 

<dependency> 
<groupId>io.jsonwebtoken</groupId> 
<artifactId>jjwt</artifactId> 
<version>0.6.0</version> 
</dependency> 
+2

Хотя ответы только на код могут быть действительными в простых контекстах, обратите внимание, что они не рекомендуются. Попробуйте объяснить или контекстуализировать код, указав *, что * код делает и * как * он это делает. – XenoRo